检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
配置RabbitMQ实例的公网访问 当您需要通过公网地址访问RabbitMQ实例时,可开启实例的公网访问功能,并设置弹性IP地址。当业务不再使用公网访问功能时,也可以关闭实例的公网访问功能。 公网访问与VPC内访问相比,可能存在网络丢包和抖动等情况,且访问时延有所增加,因此建议仅
flow状态的连接数 该指标用于统计整个实例中的connection,状态是flow状态的总数。 单位:个 说明: 2022年5月16号及以后购买的实例,支持此监控项。 >= 0 RabbitMQ实例 1分钟 connections_states_block block状态的连接数
仲裁队列解决了镜像队列的性能和同步问题。 仲裁队列的算法是基于Raft共识算法的一个变种,提供更好的消息吞吐量。仲裁队列包含一个主副本和多个从副本,当生产者向主副本发送一条消息,主副本会将消息同步给从副本,超过半数的副本保存消息后,主副本才会向生产者发送确认。这意味着少部分比较慢的从副本不会
配置RabbitMQ监控告警 本章节主要介绍部分监控指标的告警策略,以及配置操作。在实际业务中,建议按照以下告警策略,配置监控指标的告警规则。 表1 RabbitMQ实例配置告警的指标(RabbitMQ 3.x.x版本) 指标名称 告警策略 指标说明 解决方案 内存高水位状态 告警阈值:原始值>=1
配置高级特性 配置RabbitMQ持久化 配置RabbitMQ TTL
配置Vhost 创建RabbitMQ Vhost 创建RabbitMQ Exchange 绑定RabbitMQ Exchange 创建RabbitMQ Queue 绑定RabbitMQ Queue 管理RabbitMQ Vhost 管理RabbitMQ Exchange 管理RabbitMQ
别配置了正确的规则,客户端才能访问RabbitMQ实例。 建议ECS、RabbitMQ实例配置相同的安全组。安全组创建后,默认包含组内网络访问不受限制的规则。 如果配置了不同安全组,可参考如下配置方式: 假设ECS、RabbitMQ实例分别配置了安全组:sg-53d4、Default_All。
RabbitMQ支持设置消息和队列的TTL,消息的TTL可以通过以下两种方法设置: 通过队列属性设置:队列中所有消息的具有相同的过期时间。 对消息本身单独设置:每条消息可以设置不同的TTL。 如果两种方法同时使用,以较小的TTL为准。 TTL是RabbitMQ中需要慎用的特性,它可能会对性能产生负面影响。
Host 设置策略所应用的Vhost。如果为指定的Vhost设置,请在“Virtual Host”选择3创建的Vhost;如果没有,则默认为“/”。 Name 策略的名称,用户自定义。 Pattern Queue的匹配模式(正则表达式)。 Apply to 策略所适用的目标。 Priority
持久化是将内存中的消息写入到磁盘中,以防异常情况导致内存中的消息丢失。但是磁盘的读写速度远不如内存,开启消息持久化后,RabbitMQ的性能会下降。与惰性队列不同,持久化消息会在磁盘和内存中各存储一份,只有在内存空间不够时,才会将内存中的消息删除,存储到磁盘中。 非持久化的Queue、Exchange在重启之后会丢失。
可访问的Vhost:在下拉框中选择用户可以访问的Vhost。 可配置的资源:为用户授予Vhost下资源的权限,使用正则表达式匹配资源。例如输入“^test-.*”,表示为用户授予Vhost下所有名称以“test-”开头的资源的权限。 可写的资源:为用户授予Vhost下资源的写权限,使用正则表达式匹配资源。例如输入“
他队列的消息收发。这种场景下,建议您启用惰性队列。 惰性队列(Lazy Queue)会尽可能的将消息存入磁盘中,在消费者消费到相应的消息时才会被加载到内存中,这样可以减少内存的消耗,但是会增加I/O的使用,影响单个队列的吞吐量。惰性队列的一个重要的设计目标是能够支持更长的队列,即支持更多的消息存储/消息堆积。
标签。 如您的组织已经设定分布式消息服务RabbitMQ版的相关标签策略,则需按照标签策略规则为RabbitMQ实例添加标签。在“标签”页面新添加的标签如果不符合标签策略的规则,会添加失败。 标签共由两部分组成:“标签键”和“标签值”,其中,“标签键”和“标签值”的命名规则如表1所示。
单一活跃消费者消费流程 配置单一活跃消费者 在声明队列时,可以配置单一活跃消费者,只需要将队列的“x-single-active-consumer”参数设置为“true”。 以下示例演示在Java客户端设置单一活跃消费者。 Channel ch = ...; Map<String,
nack”否定应答(NACK)消息。 消息在队列的存活时间超过设置的TTL时间。 队列的消息数量已经超过最大队列长度。 死信消息会被RabbitMQ进行特殊处理,如果配置了死信队列,该消息将会被存储到死信队列中,如果没有配置死信队列,该消息将会被丢弃。 更多关于死信的说明,请参考Dead Letter Exchanges。
查看监控指标与配置告警 查看RabbitMQ监控数据 RabbitMQ支持的监控指标 配置RabbitMQ监控告警
basicAck(deliveryTag, false); } }); 未确认的消息缓存在内存中,如果未确认的消息过多,会导致内存使用率过高,此时可以在客户端配置预取值来限制消费者预取的消息数量,具体方法请参见配置RabbitMQ消息预取值。 父主题: 管理消息
配置RabbitMQ网络连接 连接RabbitMQ网络要求 配置RabbitMQ实例的公网访问 父主题: 连接实例
客户端保持忙碌。如果您的处理时间和网络状态稳定,则只需将总往返时间除以每条消息在客户端的处理时间即可获得估计的预取值。 在消费者多且处理时间短的情况下,建议使用较低的预取值。过低的预取值会使消费者闲置,因为消费者在处理完消息后需要等待下一批的消息到达。过高的值可能会使单个消费者忙碌,其他消费者处于空闲状态。
配置RabbitMQ访问控制 开启RabbitMQ ACL访问 配置RabbitMQ ACL用户 父主题: 连接实例