标签:standard 利用 get why 比较 系统 优雅 www blog
1. Why do we need MQ?
(1) 消峰填谷
以订单系统和结算系统场景为例,如果订单系统通过RPC框架来调用结算系统,
在有高峰促销的情况下生成订单的量会非常大,而且由于生成订单的速度也非常快,
这样势必会给结算系统造成系统压力,服务器利用率则会偏高,但在不是高峰的时间点订单量比较小,
结算系统的服务器利用率则会偏低。
通过MQ的方式,将订单存储到MQ队列中,消费端通过拉取的方式,并且拉去速度有消费端来控制,则就可以控制流量趋于平稳。
这样对于结算系统来讲,就达到了削峰填谷的目的。或者说起到了流控的目标。
2. MQ Selection?
(1)Scene
RabMQ: Focus on standards(AMQP)
Kafka:Focus on Application
(2)Performance
RabMQ: 20k- /s
Kafka: 100k- /s
(3) Architecture and Design
Reference:
1.《如何优雅的使用MQ-详述功能场景 - 王新栋》
2.《Understanding When to use RabbitMQ or Apache Kafka》
标签:standard 利用 get why 比较 系统 优雅 www blog
原文地址:https://www.cnblogs.com/xiaobin-hlj80/p/9544039.html