消息队列RabbitMQ
消息队列RabbitMQ是一种跨进程、异步的通信机制,由消息系统来确保消息的可靠传递。完全兼容开源RabbitMQ,部署方便,提供丰富的工具和插件。具有易用性、扩展性、可靠性以及高可用性等特性。适用于异步处理、应用解耦、限流削峰(秒杀活动)、日志处理、消息通讯等场景。
产品特性
高可用性
RabbitMQ集群版支持Quorum队列、镜像队列,可避免单节点故障,提升数据的安全性和服务的可用性。
灵活性
RabbitMQ提供了许多插件,可以支持从多方面进行扩展。(可以编写自己的插件)
高性能
紫光云消息队列RabbitMQ时效性达到微秒级,延迟低。
高可靠
RabbitMQ通过持久化、传输确认以及发布确定等机制来保证可靠性。
功能优势
独占式体验
紫光云消息队列RabbitMQ实现物理隔离,实例之间互不影响,提供多种规格供用户选择,即开即用,支持对实例和节点进行监控。
流量削峰
紫光云消息队列RabbitMQ提供异步处理机制,允许用户把消息放入队列,但并不立即处理。支持向队列中放入若干条消息,在需要的时候再去处理。
异步通信
子描述三
应用解耦
紫光云消息队列RabbitMQ支持独立的扩展或者修改两边的处理过程,只需要确保它们遵守同样的接口约束。
应用场景
在秒杀场景下,网站瞬间访问流量激增,瞬间并发访问量可以突增10倍,甚至100倍以上,这种情况下可能导致整个系统服务宕机。所以可以引入RabbitMQ消息队列对流量进行削峰,瞬间将高流量变成平稳流量,从而有效缓解流量压力。同时,采用异步处理模式来提高系统并发量,从而提高整个服务的稳定性和可用性。
在抢购场景下,用户抢购之后订单系统调用接口访问库存系统,但当库存系统无法访问时,就会导致订单减库存失败,从而导致订单失败。这种情况下可以引入RabbitMQ消息队列进行订单系统和库存系统的解耦,用户下单之后订单系统写入消息队列,不需要关注库存系统的状态。