检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
用不超过5个优先队列。 连接和通道 每个连接使用大约100 KB的内存(如果使用TLS会更多),成千上万的连接会导致RabbitMQ负载很高,极端情况下,会导致内存溢出。AMQP协议引入了通道的概念,一个连接中可以有多个通道。连接是长期存在的,AMQP连接的握手过程比较复杂,至少
RabbitMQ的消息确认机制分为生产者确认和消费者确认。在使用RabbitMQ时,生产者确认和消费者确认对于确保数据可靠性至关重要。如果连接失败,传输中的消息可能会丢失,需要重新传输。消息确认机制可以让服务端和客户端知道何时重新传输消息。客户端可以在收到消息时确认消息,也可以在客户端完全处理完消息后确认。
源和操作监控能力,帮助用户对每个RabbitMQ实例进行自动实时监控、告警和通知操作。用户可以实时掌握实例的各类业务请求、资源占用、流量、连接数和消息积压等关键信息。 关于DMS for RabbitMQ支持的监控指标,以及如何创建监控告警规则等内容,请参见支持的监控指标。 父主题:
购买实例 连接RabbitMQ 开源RabbitMQ客户端向RabbitMQ实例生产消息和消费消息前,需要先连接RabbitMQ实例。 分布式消息服务RabbitMQ版分别为您提供了开启和关闭SSL的示例代码,通过示例代码测试客户端和实例是否可以连接。 支持区域: 全部 连接未开启SSL方式的RabbitMQ实例
的Vhost上,相互之间不会干扰。一个实例下可以有多个Vhost,一个Vhost里可以有若干个Exchange和Queue。生产者和消费者连接RabbitMQ实例时,需要指定一个Vhost。Vhost的相关介绍,请参考官网文档Virtual Hosts。 图1 Vhost架构图
重置RabbitMQ实例密码 如果您忘记了创建实例时设置的密码,可以通过重置密码功能,重新设置一个新的密码,使用新密码连接RabbitMQ实例。 RabbitMQ AMQP-0-9-1版本不支持重置实例密码。 前提条件 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"]
String 实例内网连接IP地址。 connect_domain_name String 实例内网连接域名。 public_connect_address String 实例公网连接IP地址。 public_connect_domain_name String 实例公网连接域名。 port
String 实例内网连接IP地址。 connect_domain_name String 实例内网连接域名。 public_connect_address String 实例公网连接IP地址。 public_connect_domain_name String 实例公网连接域名。 port
告警级别:重要 未确认消息数过多可能会导致消息堆积 检查消费者是否异常 检查消费者逻辑是否消耗时间过长 连接数 告警阈值:原始值>业务预期连接数 连续触发次数:1 告警级别:重要 连接数突增可能是流量变大的预警 需检查业务是否正常,可参考其他告警 通道数 告警阈值:原始值>业务预期通道数
16u32g.cluster 否 超高I/O 购买完成后,在实例详情页获取RabbitMQ实例的内网连接地址,并记录购买实例时设置的用户名和密码。如果是“rabbitmq-2u4g”实例,除了内网连接地址、用户名和密码外,还需要记录Web界面UI地址,此地址在后续登录WebUI界面设置镜像队列和惰性队列时需要使用。
压测性能为准。 服务端的性能主要跟以下因素相关:队列数、消息堆积、连接数、channel、消费者数、镜像队列、优先级队列、消息持久化和exchange类型等,在选择实例规格时,请根据业务模型压测结果选择。 一条连接最多可以开启2047个channel。 单机版实例可用于测试场景,
String 实例内网连接IP地址。 connect_domain_name String 实例内网连接域名。 public_connect_address String 实例公网连接IP地址。 public_connect_domain_name String 实例公网连接域名。 port
是否开启公网访问开关。 公网连接地址 开启公网访问后,连接实例的地址。 公网访问Web界面UI地址 开启公网访问后,访问实例管理工具的地址。 表3 连接参数说明(RabbitMQ AMQP-0-9-1版本) 参数 说明 内网连接地址 未开启公网访问时,连接实例的地址。 ACL访问控制
的安全组,请根据实际需要进行配置。 连接RabbitMQ实例前,请根据连接方式配置对应的安全组,具体请参考表2或表3。 创建安全组的操作指导请参考创建安全组,为安全组添加规则的操作指导请参考添加安全组规则。 弹性IP地址 如果客户端使用公网连接RabbitMQ实例,请提前创建弹性IP地址。
Queue用于存储消息,每个消息都会被发送到一个或多个Queue中。 绑定Queue Exchange收到消息后,根据路由键将消息发送到绑定的Queue。 连接实例 客户端使用内网/公网连接RabbitMQ实例,并生产消费消息。
实例约束与限制 限制项 约束和限制 版本 当前服务端版本为3.8.35和AMQP-0-9-1。 连接数 RabbitMQ单机和集群实例,不同实例规格的连接数上限不一致,具体限制,请参考产品规格。 通道数 单条连接可以建立的通道数如下: RabbitMQ 3.8.35版本:<= 2047 RabbitMQ
RabbitMQ最佳实践一览表 最佳实践 说明 实现网络异常时RabbitMQ客户端自动恢复 本章节提供了客户端重连示例代码,使客户端在网络异常导致连接断开时自动恢复连接,降低网络故障对业务的影响。 实现RabbitMQ节点重启后消费者自动重连 本章节提供了RabbitMQ节点重启后消费者自动重连示
开启待下线插件后,容易引起过载风险,影响业务面稳定。 rabbitmq_web_stomp插件通过临时队列提供WebSocket能力,同时其连接和释放依赖于心跳机制,过多的临时队列以及过多连接数会导致内存高水位,从而导致节点状态异常。 消减措施 已开启插件的实例,建议参考设置RabbitMQ告警规则,配置相应的告警,提前预知并消减风险。
used_storage_space Integer 已使用的消息存储空间,单位:GB。 connect_address String 实例连接IP地址。 port Integer 实例连接端口。 status String 实例的状态。详细状态说明见实例状态说明。 description String 实例描述。