队列消息特点:
基本模型: SimpleQueue
在上图的模型中,有以下几个概念:
适用场景:基本模型适用于 消息存取 数量不多,频率不高。
工作模型: WorkQueue
WorkQueue简单来说就是让多个消费者绑定到一个队列,共同消费队列中的消息。
弊端:
当消息处理比较耗时的时候,可能生产消息的速度会远远大于消息的消费速度。长此以往,消息就会堆积越来越多,无法及时处理。那么这时就可以用WorkQueue模型,多个消费者共同处理消息,处理消息的速度就能大大提高了。
工作模型它默认分配模式是 平均分配给每个消费者,并没有考虑到消费者的处理能力。这样显然是有问题的。有的消费者性能高,有的消费者性能低。如果两个消费者都消费同样的消息,那么就会造成一个消费的快些一个消费的慢些,因为性能高的消费者它的消费能力要强些,性能低的消费者消费能力要弱些。
当然默认的平均分配模式也可以在消费者的配置文件中更改为能者多劳模式,能力强的多干点,能力弱的少干点。
适用场景:工作模型适用于 消息存取 数量多,频率高。