消息队列好处:1削峰2解耦3异步
消息队列的两种模式(或者说队列模型GitHub SnailClimb)
一对一,消费者主动拉取数据,消息收到后消息清除
一对多,消费者消费数据之后不会清除消息,即一条消息可以由多个消费者消费
一种队列主动退给消费者,但是各个消费者消费速度往往不一致(比如队列推的带宽是50M/s,消费者1的接受带宽是100M/s ,消费者2的接受带宽是10M/s;那么消费者1资源浪费,消费者2又吃不消)
是消费者主动拉的(消费者的消费速度由自己决定;缺点是要维护一个长轮询,消费者要时不时地去看队列有没有新数据)