Beispiel #1
0
    protected override void SetUp()
    {
        base.SetUp();

        _producer = Configure.Producer(c => c.UseKafka(KafkaTestConfig.Address)).Create();

        Using(_producer);

        _topic = GetNewTopic();

        var config = new ConsumerConfig
        {
            BootstrapServers = KafkaTestConfig.Address,
            GroupId          = "default",
            EnableAutoCommit = false,
            AutoOffsetReset  = AutoOffsetReset.Earliest
        };

        _consumerBuilder = new ConsumerBuilder <byte[], byte[]>(config)
                           .SetPartitionsAssignedHandler((_, topicPartitions) =>
        {
            Console.WriteLine($"Partitions assigned: {string.Join(", ", topicPartitions)}");

            return(topicPartitions
                   .Select(p => p.WithOffset(Offset.Beginning)));
        })
                           .SetPartitionsRevokedHandler((_, topicPartitionOffsets) =>
        {
            Console.WriteLine($"Partitions revoked: {string.Join(", ", topicPartitionOffsets)}");

            return(topicPartitionOffsets);
        });
    }
 public void Init()
 {
     if (_producer is null)
     {
         _producer = Configure.Producer(c => c.UseKafka(_kafkaSetting.Server))
                     .Serialization(s => s.UseNewtonsoftJson())
                     .Create();
     }
 }
Beispiel #3
0
        static async Task Produce(IToposProducer producer, IEnumerable <string> events, int eventCount)
        {
            var stopwatch = Stopwatch.StartNew();

            await Task.WhenAll(events.Select(async(evt, index) => await producer.Send(evt, index.ToString())));

            var elapsedSeconds = stopwatch.Elapsed.TotalSeconds;

            Console.WriteLine($"Producing {eventCount} events took {elapsedSeconds:0.0} s - that's {eventCount/elapsedSeconds:0.0} evt/s");
        }
Beispiel #4
0
    protected override void SetUp()
    {
        _positionsStorage = new InMemPositionsStorage();

        _topic = GetNewTopic();

        _producer = Configure
                    .Producer(c => c.UseKafka(KafkaTestConfig.Address))
                    .Logging(l => l.UseSerilog())
                    .Create();

        Using(_producer);
    }
Beispiel #5
0
        public void Init()
        {
            if (_producer is null)
            {
                _producer = Configure.Producer(c => {
                    var kafkaConfig = c.UseKafka(_kafkaServerName);

                    if (_certificateFilename != null)
                    {
                        kafkaConfig.WithCertificate(_certificateFilename);
                    }
                })
                            .Logging(l => l.UseSerilog())
                            .Serialization(s => s.UseNewtonsoftJson())
                            .Create();
            }
        }