KafkaFLow - 基于类型的生产者的问题

问题描述 投票:0回答:1

我有文档中描述的以下设置。我使用的是 KafkaFlow 版本 2.4.0。请在下面找到相同的源代码。但我收不到任何消息。

`services.AddKafka(kafka => kafka
    .AddCluster(cluster => cluster
        .WithBrokers(new[] { "localhost:9092" })
        .AddProducer<KafkaCommentProducer>(
            producer => 
                producer.DefaultTopic("Test")
            )
    )
);`


`public class KafkaCommentProducer: IKafkaCommentProducer
{
    private readonly IMessageProducer<KafkaCommentProducer> _producer;

    public ProductEventsProducer(IMessageProducer<KafkaCommentProducer> producer)
    {
        _producer = producer;
    }

    public Task ProduceAsync(Product product) =>
        _producer
            .ProduceAsync(product.Id.ToString(), product);
}
`

`TestController(IKafkaCommentProducer producer)
var result = await producer.ProduceAsync(message);`

消费者

.\bin\windows\kafka-console-consumer.bat --topic Test --from-beginning --bootstrap-server localhost:9092

我尝试了基于类型的生成器和 .Net 6 Web 应用程序

.net key producer kafkaflow
1个回答
0
投票

该代码片段没有 Consumer 配置,但是,问题似乎是由于序列化/反序列化不匹配造成的。

您需要为消费者/生产者使用相同的序列化协议。 您可以在here找到如何使用 Protobuf 执行此操作的示例。

© www.soinside.com 2019 - 2024. All rights reserved.