【问题标题】:How to add header properties in kafka message while sending message to producer using C#?使用 C# 向生产者发送消息时如何在 kafka 消息中添加标头属性?
【发布时间】:2020-07-25 21:43:41
【问题描述】:
                var router = new BrokerRouter(options);
                var client = new KafkaNet.Producer(router, maximumAsyncRequests, maximumMessageBuffer);
                var text="";
                    var fileStream = new FileStream(@"D:/kafka_examples/consumed_files123.ifc", FileMode.Open, FileAccess.Read);
                    using (var streamReader = new StreamReader(fileStream, Encoding.UTF8))
                    {
                        text = streamReader.ReadToEnd();
                     Console.WriteLine(text);
                    client.SendMessageAsync("Hello-Kafka", new[]
                  { new Message(text) }).Wait();

                }

这是我用来向生产者发送消息的代码,它工作正常,但现在我想在消息中添加一些标头属性。现在请帮助我使用 C# 添加标题属性。

【问题讨论】:

    标签: c# apache-kafka kafka-consumer-api kafka-producer-api


    【解决方案1】:

    使用 ConfluentKafka 的简单标头示例:

    Headers hd = new Headers()
    {
        new Header("test-key-1", new byte[100]),
        new Header("test-key-2", new byte[101])
    };
                
    
    var msg = new Message<int, YourValueObject>()
    {
        Key = yourKey,
        Value = yourValue,
        Headers = hd
    };
    
    ....
    await _producer.ProduceAsync("topic", msg);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-03
      • 2015-03-19
      • 1970-01-01
      • 2023-01-21
      • 1970-01-01
      相关资源
      最近更新 更多