我有以下设置,如文档中所述。我使用的是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);`
字符串
消费者
第一个月
我尝试了一个基于类型的生产者和.net6web应用程序
1条答案
按热度按时间55ooxyrt1#
该代码段没有Consumer配置,但是,问题看起来是由于序列化/反序列化不匹配造成的。
您需要对消费者/生产者使用相同的序列化协议。你可以在这里找到一个如何使用Protobuf的例子。