消息队列

1.消息中间件的使用场景

异步处理、业务解耦、削峰填谷

异步处理

场景:
购卡系统:购卡订单支付成功,需要更新订单状态,通知发票系统记录信息,通知财务系统记录信息。假如每一步需要100ms,共300ms。而通过发送消息到消息队列中,由发票系统和财务系统进行订阅消息处理,假如发送消息队列需要50ms,共150ms,整体缩短了接口的响应时间。

业务解耦

在后续中如果产品提出其它业务处理,比如短信通知等,都可以通过独立的服务订阅mq来进行处理,防止业务代码耦合在一起。

削峰填谷

当秒杀、促销等活动中,会导致流量激增,服务器、数据库等无法在短时间内处理大量的请求,此时可以把请求先放到mq中,然后根据服务器的处理能力进行消费,不至于直接让服务器挂掉。

2.主流消息队列

ActiveMQ和RabbitMQ平时工作中没有接触到,主要用到的就是Kafka和RocketMQ这两种,在网上找到的对比信息,供参考


image.png
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容