检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
持久化是将内存中的消息写入到磁盘中,以防异常情况导致内存中的消息丢失。但是磁盘的读写速度远不如内存,开启消息持久化后,RabbitMQ的性能会下降。与惰性队列不同,持久化消息会在磁盘和内存中各存储一份,只有在内存空间不够时,才会将内存中的消息删除,存储到磁盘中。 非持久化的Queue、Exchange在重启之后会丢失。
弹性云服务器是由CPU、内存、操作系统、云硬盘组成的基础的计算组件。RabbitMQ实例运行在弹性云服务器上,一个代理对应一台弹性云服务器。 云硬盘(Elastic Volume Service) 云硬盘为云服务器提供块存储服务,RabbitMQ的所有数据(如消息和日志等)都保存在云硬盘中。 云审计(Cloud
工作原理: 创建x-delayed-message Exchange,并指定Exchange类型,Exchange类型用于确定路由规则。支持x-delayed-message的Exchange类型为:Direct Exchange、Fanout Exchange、Topic Exchange和Header
采用生产者确认的发送模式,并监控生产端消息生产速度和时长,当消息生产时长有明显增加时进行流控措施 磁盘高水位状态 告警阈值:原始值>=1 连续触发次数:1 告警级别:致命 告警阈值为1表示触发磁盘高水位,会阻塞消息生产 减少惰性队列的消息堆积 减少持久化队列的消息堆积 删除队列 内存使用率
是否必选 参数类型 描述 type 否 String 产品的类型。 advanced:专享版 platinum:铂金版 dec:专属云版 exp:体验版 请求参数 无 响应参数 状态码:200 表3 响应Body参数 参数 参数类型 描述 engine String 消息引擎类型。 versions
ListEngineProductsEntity 参数 参数类型 描述 type String 产品类型。当前产品类型有单机和集群。 product_id String 产品ID。 ecs_flavor_id String 底层资源类型。 billing_code String 账单计费类型。 arch_types
it 磁盘平均读操作耗时 该指标用于统计磁盘在测量周期内平均每个读IO的操作时长。 单位:ms 2020年6月及以后购买的实例,支持此监控项。 >0 RabbitMQ实例节点 1分钟 rabbitmq_disk_write_await 磁盘平均写操作耗时 该指标用于统计磁盘在测量周期内平均每个写IO的操作时长。
采取针对性的优化措施。 监控资源利用率,评估当前配置是否过高。例如:CPU、内存、云硬盘等资源的利用率。 监控闲置的资源,避免浪费。例如:未挂载的云硬盘、未绑定的EIP等。 计费模式优化 不同类型的业务对资源使用周期有不同的要求,为每一类业务确定合适的计费模式,灵活组合以达到最优效果。
bbitMQ的高性能。 使用较小的队列长度 队列中存在大量消息时,会给内存使用带来沉重的负担。为了释放内存,RabbitMQ会将消息刷新到磁盘。刷盘需要重建索引,重启包含大量消息的集群,导致这个过程非常耗时。当刷盘的消息过多时,会阻塞队列处理消息,从而降低队列速度,影响RabbitMQ节点的性能。
15:29:16购买了一个按需计费的RabbitMQ实例,由于业务需要,于2023/04/18 16:30:30执行按需转包年/包月操作,生成类型为“按需转包年/包月”的订单。用户支付订单后,按需转包年/包月的RabbitMQ实例立即生效。在“费用中心 > 账单管理”页面将生成如下三条账单信息:
分布式消息服务RabbitMQ版已经预设了几种规格,请根据需要选择。磁盘类型和磁盘大小根据实际需求进行设置。RabbitMQ实例创建后,磁盘类型不支持修改。 磁盘类型支持高I/O、超高I/O、极速型SSD和通用型SSD,更多磁盘信息请参考如何选择磁盘类型。 图1 套餐规格 设置网络信息。 表3 实例网络参数说明
tMQ版价格详情中的“实例价格”。 存储空间费用 计费因子:云硬盘类型、容量 说明: 存储空间在账单中显示的产品名称为“分布式消息服务物理多租存储”,如图1所示。 包年/包月、按需计费 云硬盘单价 * 购买时长 云硬盘单价请参见分布式消息服务RabbitMQ版价格详情中的“存储价格”。
1所示。 图1 配置费用示例 配置费用将包括以下部分: 实例费用:根据所选配置(包括代理规格和代理数量)计算的费用。 存储空间费用:磁盘类型和总磁盘存储空间(单个代理的存储空间*代理数量)的费用。 计费周期 按需计费RabbitMQ实例按秒计费,每一个小时整点结算一次费用(以UT
消息堆积对业务的影响及解决办法 消息堆积对业务的影响 过量的消息堆积可能会引起内存或磁盘告警,从而造成所有connection阻塞,进而影响到其他队列的使用,导致整体服务质量的下降。 消息堆积产生的原因 一般来说消息堆积是由于生产消息的速率远大于消费消息的速率所导致的。比如某个时
q.32u64g.cluster。 新规格除了原有的磁盘类型,还支持通用型SSD、极速型SSD等多种磁盘类型,客户选择更加灵活。 RabbitMQ实例的存储空间估算参考 在集群模式中,RabbitMQ需要对消息持久化写入到磁盘中,因此,您在创建RabbitMQ实例选择存储空间时,
流程被阻塞。 仅RabbitMQ 3.8.35版本存在内存高水位限制。 磁盘高水位阈值 >= 5GB 磁盘剩余空间低于5GB会触发磁盘高水位,生产者流程被阻塞。 仅RabbitMQ 3.8.35版本存在磁盘高水位限制。 cluster_partition_handling pause_minority
配置RabbitMQ惰性队列 默认情况下,RabbitMQ生产者生产的消息存储在内存中,当需要释放内存时,会将内存中的消息换页至磁盘中。换页操作会消耗较长的时间,且换页过程中队列无法处理消息。 如果生产速度过快(例如执行批处理任务),或者消费者由于各种原因(例如消费者下线、宕机)
现消息大量堆积的场景,不推荐使用仲裁队列,因为仲裁队列的写入会造成成倍的磁盘占用。 仲裁队列的消息会优先保存在内存中,使用仲裁队列时,建议定义队列最大长度和最大内存占用,在消息堆积超过阈值时从内存转移到磁盘,以免造成内存高水位。 更多关于仲裁队列的说明,请参考Quorum Queues。
单个代理存储空间 根据实际需要选择存储RabbitMQ数据的磁盘类型和磁盘大小。 实例总存储空间 = 单个代理的存储空间 * 代理数量,RabbitMQ实例创建后,磁盘类型不支持修改。 磁盘类型选择“超高I/O”,磁盘大小设置为“100GB”。 图3 设置实例规格和存储空间 设置
若设置惰性队列,请输入lazy。惰性队列模式会在磁盘上存储尽可能多的消息以减少内存使用;若不设置,队列将消息存储在内存缓存以尽可能快地传递消息。(AMQP版本默认将消息存储到磁盘,不涉及此字段) 响应参数 状态码:200 表3 响应Body参数 参数 参数类型 描述 name String Queue名称