下面是需求,按优先级排列:
- 每个任务有资源要求,消费者持有有变化的资源,每个任务需要点对点分配给任意一个满足资源要求的消费者。(希望有接口可以进行这样的定制,要不然就得魔改)
- 每个任务至少需要被消费一次(我可以写去重机制,当然如果队列能确保有且仅消费一次就更好了)
- 任务失败 /超时需要重新入队列
- 任务队列高可用
- 不要求高吞吐量:每个任务的耗时很长,平均下来几百个消费者每秒完成几十个任务
下面是需求,按优先级排列:
1
EPr2hh6LADQWqRVH Apr 3, 2020 via Android
rmq
|
2
EPr2hh6LADQWqRVH Apr 3, 2020 via Android
rabbitmq
|
3
waising Apr 3, 2020 via iPhone pulsar
|
4
Contextualist OP @waising 看了下 pulsar,它的 pulsar function 有点意思,可以定制分发逻辑,似乎基本满足我上述的要求了。就是整体来看这个系统大而全,感觉有些重,我还是有点贪心,希望找到 nsq 一样的轻量方案。我得再花时间考察一下它。
|
5
waising Apr 3, 2020
@Contextualist #4 这个是有点重。对标 kafka 的
|