检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
绑定RabbitMQ Queue 绑定Queue是将Exchange和Queue关联起来,在生产者发送消息到Exchange后,Exchange根据路由规则将消息发送到与其关联的Queue中。 本章节指导如何在控制台为Exchange绑定Queue,只有绑定Queue后,Exchange
创建RabbitMQ Exchange Exchange用于接收、分配消息。生产者向分布式消息服务RabbitMQ版发送消息时,不会直接将消息发送到Queue,而是先将消息发送到Exchange中,Exchange根据路由键查找Queue,如果查找到,将消息存放到Queue中,如果未查找到
配置RabbitMQ死信消息 死信是RabbitMQ中的一种消息机制,在消费消息时,如果队列里的消息符合以下任意一种情况,那么该消息将成为“死信”。 “requeue”被设置为“false”,消费者使用“basic.reject”或“basic.nack”否定应答(NACK)消息。
配置RabbitMQ持久化 默认情况下,RabbitMQ生产者生产的消息存储在内存中,当节点宕机或重启时,会导致消息丢失。RabbitMQ提供持久化机制,可在节点宕机或重启时确保消息不丢失。持久化包括Exchange持久化、Queue持久化和Message持久化。 持久化是将内存中的消息写入到磁盘中
查看RabbitMQ消息 生产者向Queue生产消息后,可以在控制台查看指定Vhost和Queue的消息内容和消息轨迹。 仅RabbitMQ AMQP-0-9-1版本支持在控制台查看消息。 查看RabbitMQ消息 登录管理控制台。 在管理控制台左上角单击,选择区域。 此处请选择RabbitMQ
配置RabbitMQ实例的公网访问 当您需要通过公网地址访问RabbitMQ实例时,可开启实例的公网访问功能,并设置弹性IP地址。当业务不再使用公网访问功能时,也可以关闭实例的公网访问功能。 公网访问与VPC内访问相比,可能存在网络丢包和抖动等情况,且访问时延有所增加,因此建议仅在业务开发测试阶段开启公网访问
通过消息幂等实现消息去重 方案概述 在RabbitMQ的业务处理过程中,如果消息重发了多次,消费者端对该重复消息消费多次与消费一次的结果是相同的,多次消费并没有对业务产生负面影响,那么这个消息处理过程是幂等的。消息幂等保证了无论消息被重复投递多少次,最终的处理结果都是一致的,避免了因消息重复而对业务产生影响
消息堆积对业务的影响及解决办法 消息堆积对业务的影响 过量的消息堆积可能会引起内存或磁盘告警,从而造成所有connection阻塞,进而影响到其他队列的使用,导致整体服务质量的下降。 消息堆积产生的原因 一般来说消息堆积是由于生产消息的速率远大于消费消息的速率所导致的。比如某个时间段消费端处理消息异常缓慢
实现网络异常时RabbitMQ客户端自动恢复 方案概述 由于服务端重启、网络抖动等原因造成客户端网络连接断开时,将导致客户端无法正常生产和消费消息。 通过在客户端侧设置重连机制,使客户端在网络连接断开时自动恢复连接,降低网络故障对业务的影响。以下场景会触发网络自动恢复: 在连接的I
RabbitMQ业务使用流程 分布式消息服务RabbitMQ版完全兼容开源RabbitMQ,为您提供即开即用、消息特性丰富、灵活路由、高可用、监控和告警等特性,广泛应用于秒杀、流控、系统解耦等场景。 使用RabbitMQ实例生产消费消息的流程如下图所示。 图1 RabbitMQ业务使用流程
RabbitMQ最佳实践汇总 本文汇总了基于分布式消息服务RabbitMQ版常见应用场景的操作实践,为每个实践提供详细的方案描述和操作指导,帮助用户轻松使用RabbitMQ。 表1 RabbitMQ最佳实践一览表 最佳实践 说明 实现网络异常时RabbitMQ客户端自动恢复 本章节提供了客户端重连示例代码
查询指定Queue详情 功能介绍 查询指定Queue详情。 调用方法 请参见如何调用API。 URI GET /v2/rabbitmq/{project_id}/instances/{instance_id}/vhosts/{vhost}/queues/{queue} 表1 路径参数
购买RabbitMQ实例 RabbitMQ是一款基于AMQP(即Advanced Message Queuing Protocol)协议的开源服务,用于在分布式系统中存储转发消息。 RabbitMQ实例采用物理隔离的方式部署,租户独占RabbitMQ实例。支持用户自定义规格和自定义特性
提高RabbitMQ性能 本章节基于吞吐量和可靠性两个指标,指导您通过设置队列长度、集群负载均衡、优先队列数量等参数,实现RabbitMQ的高性能。 使用较小的队列长度 队列中存在大量消息时,会给内存使用带来沉重的负担。为了释放内存,RabbitMQ会将消息刷新到磁盘。刷盘需要重建索引
管理RabbitMQ Queue 查看RabbitMQ Queue信息 清空RabbitMQ Queue消息 解绑RabbitMQ Queue 配置RabbitMQ镜像队列 配置RabbitMQ惰性队列 配置RabbitMQ仲裁队列 配置RabbitMQ单一活跃消费者 删除RabbitMQ
配置RabbitMQ仲裁队列 仲裁队列(Quorum Queues)提供队列复制的能力,保障数据的高可用和安全性。使用仲裁队列可以在RabbitMQ节点间进行队列数据的复制,在一个节点宕机时,队列依旧可以正常运行。 仲裁队列适用于队列长时间存在,对队列容错和数据安全要求高,对延迟和队列特性要求相对低的场景
约束与限制 本章节介绍华为云分布式消息服务RabbitMQ版产品功能的约束和限制,您在使用RabbitMQ实例时注意不要超过相应的约束和限制,以免程序出现异常。 如果因为您的实例配置超过相应的约束和限制而导致的任何不稳定情况,不在SLA承诺和赔偿范围内。 实例 表1 实例约束与限制
版本发布说明 表1列出了分布式消息服务RabbitMQ版相对开源版本新增/优化的特性。 表1 版本发布说明 实例版本 发布时间 新增/优化特性 3.8.35 2023年2月 实例支持扩容/缩容代理规格 3.8.35 2022年12月 控制台支持Vhost管理 3.8.35 2022
配置RabbitMQ监控告警 本章节主要介绍部分监控指标的告警策略,以及配置操作。在实际业务中,建议按照以下告警策略,配置监控指标的告警规则。 表1 RabbitMQ实例配置告警的指标(RabbitMQ 3.x.x版本) 指标名称 告警策略 指标说明 解决方案 内存高水位状态 告警阈值
产品规格 RabbitMQ实例规格 RabbitMQ实例兼容开源RabbitMQ 3.8.35和自研RabbitMQ AMQP-0-9-1,实例类型包括单机和集群,实例规格请参考表1和表2。 表1 RabbitMQ集群实例规格(3.8.35版本) 型号 代理数 存储空间范围(GB)