检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
配置RabbitMQ消息预取值 设置预取值可以限制未被确认的消息个数,一旦消费者中未被确认的消息数量达到设置的预取值,服务端将不再向此消费者发送消息,除非至少有一个未被确认的消息被确认。设置预取值本质上是一种对消费者进行流控的方法。 设置预取值时,需要考虑多种因素: 预取值设置太小可能会损害性能
"storage_spec_code": "dms.physical.storage.ultra.v2" } name:实例名称。由您自行定义。 engine:消息引擎,设置rabbitmq。 engine_version:消息引擎的版本。 storage_space:消息存储空间,单位GB。具体取值范围,请参考创建实例。
TL后,消息会被丢弃,如果队列设置了死信交换机,丢弃的消息会被转发到死信交换机,由死信交换机将其路由到死信队列。更多关于TTL的说明,请参考TTL。 RabbitMQ支持设置消息和队列的TTL,消息的TTL可以通过以下两种方法设置: 通过队列属性设置:队列中所有消息的具有相同的过期时间。
时间间隔大于90s的场景,请在客户端开启心跳并设置小于90s的心跳超时时间,防止客户端断连。如果心跳超时时间设置过低,在短暂网络抖动情况下可能会导致连接重建。如果心跳超时时间设置过长,可能导致集群进行主备切换时感知时间过长。推荐设置心跳超时时间为10s。 什么是心跳 Rabbit
RabbitMQ实例是否支持持久化,如何定时备份数据? RabbitMQ支持消息数据持久化,可从客户端连接RabbitMQ并设置消息持久化,也可在RabbitMQ集群管理工具界面创建队列时设置消息持久化。 不支持客户自定义定时备份数据,或从界面触发备份数据。 父主题: 实例问题
3.x.x版本 一般情况下消息如果未被消费会一直保留,只有被消费后,才会被删除。但是如果设置了过期时间(TTL),则以TTL时间为准。 RabbitMQ AMQP-0-9-1版本 如果消息设置了TTL,无论消息是否被消费,超过TTL后,消息将被删除或存入死信队列。TTL默认为48小时。
录购买实例时设置的用户名和密码。如果是“rabbitmq-2u4g”实例,除了内网连接地址、用户名和密码外,还需要记录Web界面UI地址,此地址在后续登录WebUI界面设置镜像队列和惰性队列时需要使用。 在“rabbitmq-2u4g”实例中,登录WebUI,并设置镜像队列、惰性队列和仲裁队列。
合以下任意一种情况,那么该消息将成为“死信”。 “requeue”被设置为“false”,消费者使用“basic.reject”或“basic.nack”否定应答(NACK)消息。 消息在队列的存活时间超过设置的TTL时间。 队列的消息数量已经超过最大队列长度。 死信消息会被Ra
重置RabbitMQ实例密码 如果您忘记了创建实例时设置的密码,可以通过重置密码功能,重新设置一个新的密码,使用新密码连接RabbitMQ实例。 RabbitMQ AMQP-0-9-1版本不支持重置实例密码。 前提条件 RabbitMQ实例处于“运行中”状态时,才能重置密码。 重置RabbitMQ实例密码
RabbitMQ实例集群内部的队列是否有冗余备份? 队列是否做镜像(即冗余备份)取决于用户的需要,如果用户设置了镜像,会在集群中多个代理上存储队列的副本,当某个代理故障,集群会从其他正常的代理中选择一个代理,用来同步队列数据。 父主题: 实例问题
在RabbitMQ实例控制台设置Exchange持久化。 创建Exchange时,设置Exchange持久化,如图3所示。 图3 设置Exchange持久化(控制台) 设置成功后如图4所示。 图4 持久化的Exchange(控制台) 设置Queue持久化 在RabbitMQ WebUI页面设置Queue持久化。
arguments); 以下示例演示在RabbitMQ WebUI页面设置单一活跃消费者。 图2 设置单一活跃消费者 设置完成后,在“Queues”页面查看队列特性是否包含单一活跃消费者。如图3所示,“SAC”即表示队列已设置单一活跃消费者。 图3 查看队列特性 父主题: 管理RabbitMQ
Exchange需要设置Routing Key,Exchange会将消息路由到Routing Key匹配成功的Queue中。如果不设置Routing Key,Exchange会将消息路由到所有与它绑定的Queue中。 x-consistent-hash Exchange需要设置Routing
消费者与队列间的订阅异常:建议排查队列和消费者之间的订阅是否正常。 消费端的代码本身逻辑耗费时间长:建议给消息设置过期时间,设置方法如下: 在生产消息时,设置消息过期时间。消息过期时间以expiration值体现。 在properties中设置expiration值,单位为毫秒(ms)。 AMQP.BasicProperties
AMQP-0-9-1版本RabbitMQ与开源RabbitMQ的差异 AMQP-0-9-1版本RabbitMQ是一款基于高可用分布式存储架构实现的AMQP 0-9-1协议的消息产品,能够兼容开源的RabbitMQ客户端。与开源RabbitMQ相比,能够解决各种稳定性痛点(例如消息
务器,每个Vhost数据目录不同,共用一个进程。性能上,连接多个Vhost和单独使用一个Vhost差别不大,只是RabbitMQ进程多一些对象,建议使用业务模型实测。 Vhost的相关介绍,请参考官网文档Virtual Hosts。 父主题: 连接问题
Routing Key 设置Key值字符串,用于告知Exchange应该将消息投递到哪些Queue中。 Direct Exchange和Topic Exchange需要设置Routing Key,Exchange会将消息路由到Routing Key匹配成功的Queue中。如果不设置Routing
建议在队列上设置最大长度。这样可以通过丢弃队列头部的消息来保持队列长度,队列长度永远不会大于最大长度设置。 最大长度可以通过Policy设置,也可以通过在队列声明时使用对应参数设置。 在RabbitMQ WebUI的Policy中设置。 在队列声明时使用对应参数设置。 //创建队列
后重新为消费者创建新的通道继续消费。 提高RabbitMQ性能 本章节介绍如何通过设置队列长度、集群负载均衡、优先队列数量等参数,实现RabbitMQ的高性能。 设置队列负载均衡 本章节介绍如何设置节点间队列的负载均衡,提升集群的利用率。 通过消息幂等实现消息去重 本章节描述了重
配置RabbitMQ实例的公网访问 当您需要通过公网地址访问RabbitMQ实例时,可开启实例的公网访问功能,并设置弹性IP地址。当业务不再使用公网访问功能时,也可以关闭实例的公网访问功能。 公网访问与VPC内访问相比,可能存在网络丢包和抖动等情况,且访问时延有所增加,因此建议仅