static void Main(string[] args) { var aggregatedRepository = new AggregatedRepository(); var facebookProducer = new FacebookProducer(); var twitterProducer = new TwitterProducer(); facebookProducer.SubscribeToUpdates(aggregatedRepository); twitterProducer.SubscribeToUpdates(aggregatedRepository); var client = new ClientConsumer(); aggregatedRepository.SubscribeToAggregatedUpdates(client); Thread.Sleep(3000); aggregatedRepository.StopConsuming(); Console.Read(); }
public TwitterStream(TwitterConfig twitterConfig) { _twitterConfig = twitterConfig; var config = new ProducerConfig { BootstrapServers = "localhost:9092" }; //safer producer config.Acks = Acks.All; config.EnableIdempotence = true; config.MessageSendMaxRetries = 10000; config.MaxInFlight = 5; //melhorar taxa de transferencia config.CompressionType = CompressionType.Snappy; config.LingerMs = 20; config.BatchSize = 32 * 1024; // 32 KB _twitterProducer = new TwitterProducer("twitter_tweets", config); }
public TwitterConsumerActor(IActorRef repositoryActor, TwitterProducer producer) { _repositoryActor = repositoryActor; producer.SubscribeToUpdates(this); }