希望这不是太短视的问题,但我一直在努力理解阿帕奇卡夫卡如何工作。我一直在尝试创建一个流服务,它将采用POST方法提供的一个简单pojo,根据pojo的时间戳触发一个时间窗口,并提供一个pojo列表,这些pojo也是该窗口时间框架内的流服务的POSTed。
我已经读过了几个不同的教程,我已经有了一个流媒体服务,它有一个定制的消费者和生产者工厂,并且信任,并且使用Spring注释来收听主题。因此,我可以发送和接收pojos与序列化,只有消费者和生产者的API。
我遇到困难的地方是实现加窗的时间和存储窗口记录的方法。我不确定是只使用Streams API,消费者/生产者API,还是所有这些API一起使用。我正在尝试作为一个SpringBoot应用程序来完成这个任务。这是我第一次处理这样的事情,任何形式的指导或洞察力都会受到极大的赞赏。
谢谢。
发布于 2018-06-30 11:22:08
卡夫卡的生产者和消费者被用来从经纪人那里推拉数据,这使得它的工作就像一个消息传递服务。如果您要使用标准的Kafka生产者和消费者,您可能需要自己实现流逻辑。
但是,有了Kafka流,加上消息服务功能,Kafka还为您处理流逻辑,这样您就可以专注于业务逻辑。
所以,我建议使用卡夫卡流。您还可以查看CEP (连续事件处理)引擎,这些引擎支持窗口和流处理功能,如Esper和Siddhi。
https://stackoverflow.com/questions/51109566
复制相似问题