static async Task MainAsync(string consumerGroup) { var dao = new DataAccess.Dao(); //var msgHandler = new Business.MessageHandler(dao); var msgHandler = new DeduplicationDecorator(new Business.MessageHandler(dao), dao); var consumer = new Consumer(dao, msgHandler, consumerGroup); consumer.Subscribe(KafkaConfig.TopicName); var chunkSize = 100; while (true) { if (consumer.InProcessingMessages < chunkSize) { for (var i = 0; i < chunkSize; i++) { consumer.Poll(); } } else { await Task.Delay(1); } } }
static Task MainAsync(string consumerGroup) { var dao = new DataAccess.Dao(); var msgHandler = new Business.MessageHandler(dao); //var msgHandler = new DeduplicationDecorator(new Business.MessageHandler(dao), dao); var consumer = new Consumer(dao, msgHandler, consumerGroup); return(consumer.SubscribeAsync(KafkaConfig.TopicName)); }
static async Task MainAsync(string consumerGroup) { var dao = new DataAccess.Dao(); //var msgHandler = new Business.MessageHandler(dao); var msgHandler = new DeduplicationDecorator(new Business.MessageHandler(dao), dao); var consumer = new Consumer(dao, msgHandler, consumerGroup); consumer.Subscribe(KafkaConfig.TopicName); while (true) { await consumer.ConsumeProcessAndCommitAsync(); } }
static async Task MainAsync(string consumerGroup) { var dao = new DataAccess.Dao(); var msgHandler = new Business.MessageHandler(dao); //var msgHandler = new DeduplicationDecorator(new Business.MessageHandler(dao), dao); var consumer = new Consumer(dao, msgHandler, consumerGroup); consumer.Subscribe(KafkaConfig.TopicName); while (true) { await Task.Run(() => { PollChunk(consumer); }); await Task.Delay(1); } }
static void Main(string[] args) { var consumerGroup = args.Length > 0 ? args[0] : "NEW__SYNC_PROCESSING_SYNC_COMMIT_CONSUMER_12"; Console.WriteLine($"Consumer group: {consumerGroup}"); var dao = new DataAccess.Dao(); var msgHandler = new Business.MessageHandler(dao); //var msgHandler = new DeduplicationDecorator(new Business.MessageHandler(dao), dao); var consumer = new Consumer(dao, msgHandler, consumerGroup); consumer.Subscribe(KafkaConfig.TopicName); while (true) { consumer.Poll(); } }
static void Main(string[] args) { var consumerGroup = args.Length > 0 ? args[0] : "RX_CONSUMER_7"; Console.WriteLine($"Consumer group: {consumerGroup}"); var dao = new DataAccess.Dao(); var msgHandler = new Business.MessageHandler(dao); //var msgHandler = new DeduplicationDecorator(new Business.MessageHandler(dao), dao); var consumer = new Consumer(dao, msgHandler, consumerGroup); var observable = consumer.Subscribe(KafkaConfig.TopicName); observable //.Throttle(TimeSpan.FromSeconds(1)) .Subscribe(async msg => { await consumer.ProcessMessageAsync(msg); await consumer.CommitAsync(); }); }
static async Task MainAsync(string consumerGroup) { var dao = new DataAccess.Dao(); var msgHandler = new Business.MessageHandler(dao); //var msgHandler = new DeduplicationDecorator(new Business.MessageHandler(dao), dao); var consumer = new Consumer(dao, msgHandler, consumerGroup); consumer.Subscribe(KafkaConfig.TopicName); var chunkSize = 10; var chunkIndex = 0; while (true) { consumer.Poll(); if (chunkIndex++ == chunkSize) { chunkIndex = 0; await Task.Delay(1); } } }