Esempio n. 1
0
        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();
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
 public TwitterConsumerActor(IActorRef repositoryActor, TwitterProducer producer)
 {
     _repositoryActor = repositoryActor;
     producer.SubscribeToUpdates(this);
 }