检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
实现RabbitMQ节点重启后消费者自动重连 方案概述 RabbitMQ的amqp-client虽然自带重连机制,但是自带的重连机制只会重试一次,重连失败后就不再执行。这时如果消费者没有做额外的重试机制,那么这个消费者就彻底断开与服务端的连接,无法消费消息。 amqp-clien
大多数客户端并未实现通道的线程安全,所以不要在线程之间共享通道。 不要频繁打开和关闭连接或通道 频繁打开和关闭连接或通道会发送和接收大量的TCP包,从而导致更高的延迟,确保不要频繁打开和关闭连接或通道。 生产者和消费者使用不同的连接 生产者和消费者使用不同的连接以实现高吞吐量。当生
自动续费可以减少手动续费的管理成本,避免因忘记手动续费而导致RabbitMQ实例被自动删除。自动续费的规则如下所述: 以RabbitMQ实例的到期日计算第一次自动续费日期和计费周期。 RabbitMQ实例自动续费周期根据您开通自动续费的途径不同,遵循不同的规则。 在RabbitMQ实例到期前均可开通自动续费
实现网络异常时RabbitMQ客户端自动恢复 方案概述 由于服务端重启、网络抖动等原因造成客户端网络连接断开时,将导致客户端无法正常生产和消费消息。 通过在客户端侧设置重连机制,使客户端在网络连接断开时自动恢复连接,降低网络故障对业务的影响。以下场景会触发网络自动恢复: 在连接的I/O循环中抛出未处理的异常
AMQP-0-9-1版本RabbitMQ与开源RabbitMQ的差异 AMQP-0-9-1版本RabbitMQ是一款基于高可用分布式存储架构实现的AMQP 0-9-1协议的消息产品,能够兼容开源的RabbitMQ客户端。与开源RabbitMQ相比,能够解决各种稳定性痛点(例如消息堆
Marketing,停止该版本的销售。 EOS:End of Service & support,停止该版本的服务,建议您在执行作业时选择最新版本的引擎。在该日期之后,不再提供该软件版本的任何技术服务支持。 父主题: 版本公告
进入支付页面,选择支付方式,确认付款,支付订单后即可完成续费。 统一包年/包月资源的到期日 如果您持有多台到期日不同的RabbitMQ实例,可以将到期日统一设置到一个日期,便于日常管理和续费。 图5展示了用户将两个不同时间到期的资源,同时续费一个月,并设置“统一到期日”后的效果对比。 图5 统一到期日 更多
RabbitMQ实例状态为“运行中”。 操作步骤 登录管理控制台。 单击左侧导航栏的图标,选择“应用中间件 > 分布式消息服务RabbitMQ版”。 通过以下任意一种方法,实现按需实例转包周期。 勾选RabbitMQ实例名称左侧的方框,可选一个或多个,单击信息栏左上侧的“转包周期”,弹出“转包周期”对话框,单击“是”,跳转到“按需转包年/包月”页面。
修订记录 发布日期 修订记录 2024-12-20 本次变更如下: 新增查询RabbitMQ产品规格核数的API。 2024-07-17 本次变更如下: 新增Vhost管理、Exchange管理、Queue管理、Binding管理和用户管理的API。 2023-05-08 本次变更如下:
RabbitMQ AMQP-0-9-1版本单机实例和集群实例在变更规格过程中会有秒级连接闪断,客户端需要支持自动重连,建议在业务低峰时进行变更。 代理采用滚动重启的方式进行实例变更,变更时长和代理数量有关,单个代理的变更时长一般在5~10分钟,总变更时长为(5~10分钟)*代理数量。 约束与限制
最佳实践 说明 实现网络异常时RabbitMQ客户端自动恢复 本章节提供了客户端重连示例代码,使客户端在网络异常导致连接断开时自动恢复连接,降低网络故障对业务的影响。 实现RabbitMQ节点重启后消费者自动重连 本章节提供了RabbitMQ节点重启后消费者自动重连示例代码,实现在通道关闭后重新为消费者创建新的通道继续消费。
通过消息幂等实现消息去重 方案概述 在RabbitMQ的业务处理过程中,如果消息重发了多次,消费者端对该重复消息消费多次与消费一次的结果是相同的,多次消费并没有对业务产生负面影响,那么这个消息处理过程是幂等的。消息幂等保证了无论消息被重复投递多少次,最终的处理结果都是一致的,避免了因消息重复而对业务产生影响。
图2 删除单个队列 批量删除Queue(RabbitMQ WebUI) 新增与待删除队列的前缀名称相同、且队列TTL为1ms的策略,通过此策略实现批量删除队列。 登录RabbitMQ WebUI页面。 在“Admin > Policies”页面中,新增一条策略。 图3 通过Policy批量删除队列
RabbitMQ实例是否支持跨VPC访问? RabbitMQ实例支持跨VPC访问,可以通过创建VPC对等连接,将两个VPC的网络打通,实现跨VPC访问实例。 关于创建和使用VPC对等连接,请参考VPC对等连接说明。 父主题: 连接问题
灵活组合以达到最优效果。 针对长期稳定的成熟业务,使用包年/包月计费模式。 针对不能中断的短期、突增或不可预测的业务,使用按需计费模式。 实现自动化运维 华为云也提供了丰富的运维类产品,帮助您提升运维效率,降低运维的人力成本。例如: 弹性伸缩:持续维护跨计费模式、跨可用区、跨实例
实例创建后,版本号不支持修改。 部署架构 根据需求选择“单机”或“集群”。 单机:表示部署一个RabbitMQ代理。 集群:表示部署多个RabbitMQ代理,实现高可靠的消息存储。 代理规格 根据业务需求选择相应的代理规格。更多关于规格的介绍,请参见产品规格。 为了保证服务的稳定可靠,RabbitM
在实际业务场景中,RabbitMQ实例存在多个生产者和消费者,在业务迁移时,不会迁移数据,只是通过逐个增加/关闭消费者、生产者的方式迁移实例,这种迁移方式可以实现业务无感迁移。 前提条件 已创建目标RabbitMQ实例,具体请参考购买RabbitMQ实例。 实施方案(双读模式迁移实例) 将原Rabb
开启RabbitMQ ACL访问 通过ACL可以实现对RabbitMQ实例中生产者和消费者身份的精确识别,为不同用户赋予不同的Vhost和Vhost下不同资源的权限,以达到不同用户之间权限隔离的目的。开启ACL权限控制功能后,生产消息和消费消息时,需要鉴权。 仅RabbitMQ
如果客户端和RabbitMQ实例部署在不同VPC中,由于VPC之间逻辑隔离,客户端和RabbitMQ实例不能直接通信,需要打通VPC之间的网络。 表1 连接方式说明 连接方式 实现方式 参考文档 公网连接 在RabbitMQ控制台开启公网访问,配置弹性公网IP,客户端通过弹性公网IP访问RabbitMQ实例。 配置RabbitMQ实例的公网访问
RabbitMQ集群提供镜像队列,通过镜像在其他节点同步数据。单节点宕机时,仍可通过唯一的访问地址对外提供服务。 数据容灾 通过支持数据多副本方式实现数据容灾。 父主题: 安全