【发布时间】:2014-03-02 22:02:40
【问题描述】:
我的 RabbitMQ 集群中有一个请求流,并且有多个消费者处理它们。问题是 - 出于性能原因,每个消费者都必须批量处理请求。具体来说,有一个网络 IO 操作,我可以通过批处理请求来摊销。
因此,每个消费者都希望最大程度地增加可以批处理的请求数量,但又不会增加太多延迟。
当消费者收到第一个请求时,我可能会启动一个计时器并继续收集请求,直到发生以下两种情况之一 - 计时器到期或收到 500 个请求。
有没有更好的方法来实现这一点 - 不阻止每个消费者?
【问题讨论】: