【发布时间】:2020-01-18 08:21:49
【问题描述】:
我正在寻找一些有点像消息队列但可以重新排序事件的软件。像 logstash、kafka 或 rabbit MQ 之类的东西。
我的用例是我们正在接收事件,主要是按顺序进行,但偶尔会有一个带有较旧时间戳的事件,如果“跳过队列”并接下来处理它会很好。 (我们可以处理乱序事件,但效率较低)。
排队的项目需要有磁盘支持的保证交付(即程序重新启动不应导致数据丢失)
我能找到的最接近的是Rabbit MQ's priority queues - 它允许您定义多达 256 个优先级1,优先级较高的消息会在优先级较低的消息之前传递。这可能适用于某种启发式方法(例如,优先级在几分钟内为 current_time - message_time),但这似乎并不理想。
还有什么更好的吗?
1虽然建议不要超过10个
【问题讨论】: