检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
实现RabbitMQ节点重启后消费者自动重连 方案概述 RabbitMQ的amqp-client虽然自带重连机制,但是自带的重连机制只会重试一次,重连失败后就不再执行。这时如果消费者没有做额外的重试机制,那么这个消费者就彻底断开与服务端的连接,无法消费消息。 amqp-clien
实现网络异常时RabbitMQ客户端自动恢复 方案概述 由于服务端重启、网络抖动等原因造成客户端网络连接断开时,将导致客户端无法正常生产和消费消息。 通过在客户端侧设置重连机制,使客户端在网络连接断开时自动恢复连接,降低网络故障对业务的影响。以下场景会触发网络自动恢复: 在连接的I/O循环中抛出未处理的异常
到磁盘中。 非持久化的Queue、Exchange在重启之后会丢失。 非持久化的Message在重启之后会丢失(经过持久化Queue/Exchange的消息不会自动变为持久化消息)。 持久化消息在尚未完成持久化时,如果服务器重启,消息会丢失。 RabbitMQ AMQP-0-9-
实例是否支持修改可用区? 不支持,您可以重新购买实例,以满足可用区要求,然后进行实例元数据的迁移。 RabbitMQ 3.x.x版本实例元数据的迁移步骤如下: 登录重新购买前的RabbitMQ实例的WebUI页面。 在“Overview”页签中,单击“Download broker definitions”,导出元数据。
该参数针对企业用户使用。修改企业项目,不会重启实例。 页面上方直接提示修改结果。 描述 单击,输入修改后的描述,单击。 长度为0~1024个字符。 页面上方直接提示修改结果。 安全组 单击,在下拉框中选择新的安全组,单击。 修改安全组,不会重启实例。 页面上方直接提示修改结果。 公网访问
RUNNING 实例正常运行状态。在这个状态的实例可以运行您的业务。 ERROR 实例处于故障的状态。 RESTARTING 实例正在进行重启操作。 STARTING 实例从已冻结到运行中的中间状态。 EXTENDING 实例正在进行规格变更操作。 EXTENDEDFAILED 实例处于规格变更操作失败的状态。
延迟消息存储在Mnesia内存数据库中,堆积过多(数十万甚至数百万条)可能触发内存高水位阻塞生产消息,具体请参见Limitations。 延迟消息堆积数量越多,RabbitMQ节点启动加载耗时越久,可能导致节点重启后无法快速恢复业务。 延迟消息在RabbitMQ中为单副本存储,如果该节点发生重启,该节点上的延迟消息无法被消费端消费。
创建实例时,如果无法查看虚拟私有云、子网、安全组、弹性IP,可能原因是该用户无Server Administrator和VPC Administrator权限,增加权限的详细步骤请参考修改用户组权限。 父主题: 实例问题
本章节提供了客户端重连示例代码,使客户端在网络异常导致连接断开时自动恢复连接,降低网络故障对业务的影响。 实现RabbitMQ节点重启后消费者自动重连 本章节提供了RabbitMQ节点重启后消费者自动重连示例代码,实现在通道关闭后重新为消费者创建新的通道继续消费。 提高RabbitMQ性能 本章节介
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"]
itmq_consistent_hash_exchange插件,如果需要开启,请提交工单联系技术人员在后台开启插件。 开启插件过程中,不会重启实例。 rabbitmq_shovel和rabbitmq_federation插件在特定场景下才支持开启,具体如表2所示。 表2 支持开启插件的场景
消息的消费应用程序在未处理完消息前不应确认消息,以便消费者有足够的时间处理消息,无需担心消息处理过程中由于消费者进程异常(如工作程序崩溃、重启等)导致消息丢失。 消费者确认在客户端上配置,通过配置basicConsume方法启用确认。在channel中启用消费者确认适用于大多数场景。
AMQP-0-9-1版本Exchange默认开启持久化。 是否开启Exchange持久化。 开启:该Exchange在服务器重启后仍然存在。 不开启:该Exchange在服务器重启后会被删除,需要重新创建。 Internal 仅RabbitMQ 3.x.x版本包含此参数。 Exchange是否为RabbitMQ内部使用。
获取账号名和账号ID 在调用接口的时候,部分URL中需要填入账号名和账号ID,所以需要先在管理控制台上获取到账号名和账号ID。账号名和账号ID获取步骤如下: 登录管理控制台。 鼠标悬停在右上角的用户名,选择下拉列表中的“我的凭证”。 查看账号名和账号ID。 图1 查看账号名和账号ID 父主题:
_shovel和rabbitmq_consistent_hash_exchange插件,实例创建后默认都是关闭状态。 开启插件过程中,不会重启实例。 支持区域: 全部 开启实例插件 高级特性 开源RabbitMQ提供了多个高级特性,如惰性队列、仲裁队列、死信和TTL等,您可以在客户端调用函数或使用RabbitMQ
environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.environ["CLOUD_SDK_AK"] sk = os.environ["CLOUD_SDK_SK"]
x版本需要设置此参数。RabbitMQ AMQP-0-9-1版本Queue默认开启持久化。 是否开启Queue持久化。 开启:该Queue在服务器重启后仍然存在。 不开启:该Queue在服务器重启后会被删除,需要重新创建。 自动删除 是否开启自动删除Queue。 开启:在订阅该Queue消息的最后一个消费者取消
使用较小的队列长度 队列中存在大量消息时,会给内存使用带来沉重的负担。为了释放内存,RabbitMQ会将消息刷新到磁盘。刷盘需要重建索引,重启包含大量消息的集群,导致这个过程非常耗时。当刷盘的消息过多时,会阻塞队列处理消息,从而降低队列速度,影响RabbitMQ节点的性能。 要获
RabbitMQ实例的Web管理页面无法打开 可能原因:实例安全组配置不正确 解决方案:重新配置安全组,具体步骤如下。 在实例详情页面的“基本信息 > 网络”,单击安全组名称,跳转到安全组页面。 选择“入方向规则”,查看安全组入方向规则。 实例未开启SSL开关,需要允许端口15672的访问。
3分钟创建一个游戏类容器应用 3分钟创建一个游戏类容器应用 3分钟创建一个游戏类容器应用 05 API 您可以使用API方式创建实例、删除实例、重启实例等操作。 API文档 API概览 创建RabbitMQ实例 实例规格变更 02 购买 RabbitMQ提供了Web控制台和基于HTTPS请求的RESTful