使用kafka的双向消息系统

时间:2016-09-22 13:34:44

标签: java apache-kafka kafka-consumer-api kafka-producer-api

是否有可能使用apache kafka开发双向消息传递系统? 我需要从我的消费者订阅一个主题,我需要从我的消费者那里发送消息。

1 个答案:

答案 0 :(得分:1)

你可以用两种方式之一做。为消息键设置前缀系统或将内容放在消息内部,允许消费者避免它产生的消息。

现在,您是否应该像这样设计,这取决于您的消息流量。如果你没有用事件来抨击它,最好考虑使用像Thrift这样的方法让你的消息组件进行双向通信。 Kafka相对于其复杂性而言真正优越的地方在于您需要生成和使用大量数据。对你来说情况可能并非如此。

例如,Kafka的一个常见用例是将其连接到Storm,Apex或Samza等服务,以进行数百GB甚至TB数据的分布式处理。如果您的系统具有高吞吐量要求,那么该架构将是一个很好的考虑,作为Kafka处理消息的起点。使用Storm,如果您需要发回消息以进行重新处理,您可以随时使用Kafka bolt将消息重新发布到Kafka以确保它完全重新处理。