Kafka(或其他消息队列)中是否有一项功能可以通过该功能添加仅在指定时间内处于活动状态的消息。这意味着不应在指定时间之前使用该消息。
跟进,有没有办法在达到预定时间时将这些消息移到队列的前面。
答案 0 :(得分:1)
卡夫卡不能这样做。 Kafka基本上只是一个提交日志,它将按照接收顺序写入消息,并以相同的顺序读取它们。
然而,其他更传统的消息传递经纪人可以做到这一点 - 例如,ActiveMQ Artemis支持scheduled messages。我认为消息不会在队列中移动,但在预定时间之前不会消耗。
答案 1 :(得分:1)
不在Kafka经纪人本身,但您可以使用Kafka Streams通过定义自定义Processor执行此操作,该操作执行以下操作: