我有一些概念性思维模块。我正在考虑使用Kafka如下:
---http-requests---> [Web Tier]
[Web Tier] ----composes message and publishes----> [Kafka Topic]
[Kafka Topic] <----consumes message------ [Engine Logic]
[Engine Logic] -----computes, api-calls, publishes result message----> [Kafka Topic]
[Kafka] ---???? somehow get result message to Web Tier---> [Web Tier]
[Web Tier] -----renders HTML and sends http response--->
使用非阻止的网络服务器(例如Jetty),http请求将保持打开状态&#39;但不会阻止。是否可以以请求/响应方式使用Kafka?也就是说,Web Tier是否可以向主题发布消息,然后Kafka会知道它必须提供响应吗?或者是否有责任对网站主题进行轮询并查看是否有响应?
我想我要问的是使用Kafka作为界面的最佳方式是什么? Web层和引擎逻辑依赖于什么,以便Web层和引擎之间没有直接耦合?感谢。
答案 0 :(得分:0)
我想说Kafka不适合你的用例。
Web Tier负责轮询主题并查看是否有响应。
我预见到的几个问题:
在上面提到的SO问题中,OP在评论中表示他使用了Mongo DB,因此他可以查询特定的消息。