检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
到来自客户端的消息确认,从而影响消费性能。若消费速度过低,服务端将不堪重负。 大量的连接和通道可能会影响RabbitMQ管理接口的性能 RabbitMQ会收集每个连接和通道的数据进行分析和显示,大量连接和通道会影响RabbitMQ管理接口的性能。 禁用未使用的插件 插件可能会消耗
测试实例性能 测试RabbitMQ生产速率和消费速率
本章节从实例规格、是否开启SSL、生产者/消费者数量、队列数量、队列类型、Exchange类型的维度进行分布式消息服务RabbitMQ版的性能测试,对比客户端消息生产速率和消费速率,得出性能测试结果。 测试场景一(实例规格):相同Exchange、队列、生产者数量、消费者数量、不同的实例规格 测试场景二
运行日志开启后会在LTS控制台创建对应的日志组、日志流和仪表盘。使用期间按照日志量收费,收费标准请参考LTS价格详情。 频繁产生运行日志,可能会影响RabbitMQ实例性能。 RabbitMQ AMQP-0-9-1版本实例不支持查看运行日志。 前提条件 开启运行日志需要您的账号拥有LTS服务的创建日志组和日志流的权限。
为例的每秒处理消息条数,测试场景为不开启持久化的非镜像队列,实时生产实时消费,队列无积压。此数据仅供参考,生产使用需要以实际压测性能为准。 服务端的性能主要跟以下因素相关:队列数、消息堆积、连接数、channel、消费者数、镜像队列、优先级队列、消息持久化和exchange类型等
成长地图 | 华为云 分布式消息服务RabbitMQ版 分布式消息服务RabbitMQ版(Distributed Message Service for RabbitMQ)完全兼容开源RabbitMQ,为您提供即开即用、消息特性丰富、灵活路由、高可用、监控和告警等特性,广泛应用于秒杀、流控、系统解耦等场景。
自动重连示例代码,实现在通道关闭后重新为消费者创建新的通道继续消费。 提高RabbitMQ性能 本章节介绍如何通过设置队列长度、集群负载均衡、优先队列数量等参数,实现RabbitMQ的高性能。 设置队列负载均衡 本章节介绍如何设置节点间队列的负载均衡,提升集群的利用率。 通过消息幂等实现消息去重
RabbitMQ实例采用物理隔离的方式部署,租户独占RabbitMQ实例,每个RabbitMQ之间互不影响。 高性能 单队列性能最高可达10万TPS(默认配置),增加队列可获得更高性能。 数据安全 独有的安全加固体系,提供业务操作云端审计,消息存储加密等有效安全措施。 在网络通信方面,除
预取值设置太小可能会损害性能,RabbitMQ会一直在等待获得发送消息的权限。 预取值设置太大可能会导致从队列中取出大量消息传递给一个消费者,而使其他消费者处于空闲状态。另外还需要考虑消费者的配置,消费者在处理消息时会将所有消息保存在内存中,太大的预取值会对消费者的性能产生负面影响,甚至可能会导致消费者崩溃。
Hosts)是RabbitMQ的基本特性,每个Vhost相当于一个相对独立的RabbitMQ服务器,每个Vhost数据目录不同,共用一个进程。性能上,连接多个Vhost和单独使用一个Vhost差别不大,只是RabbitMQ进程多一些对象,建议使用业务模型实测。 Vhost的相关介绍,请参考官网文档Virtual
对消息本身单独设置:每条消息可以设置不同的TTL。 如果两种方法同时使用,以较小的TTL为准。 TTL是RabbitMQ中需要慎用的特性,它可能会对性能产生负面影响。 设置队列TTL 通过channel.queueDeclare方法中的“x-expires”参数控制队列被自动删除前处于未使
RabbitMQ提供高可用的队列。镜像队列有一些设计上的缺陷,这也是RabbitMQ提供仲裁队列的原因。 镜像队列主要的缺陷在于消息同步的性能低。 镜像队列包含一个主队列和多个从队列,当生产者向主队列发送一条消息,主队列会将消息同步给从队列,所有的从队列都保存消息后,主队列才会向生产者发送确认。
在以下情况下,推荐使用惰性队列: 队列可能会产生消息堆积。 队列对性能(吞吐量)的要求不是非常高,例如TPS 1万以下的场景。 希望队列有稳定的生产消费性能,不受内存影响而波动。 处于以下情况时,无需使用惰性队列: RabbitMQ需要高性能的场景。 队列总是很短(即队列中没有消息堆积)。 设置了最大长度策略。
息确认机制可以让服务端和客户端知道何时重新传输消息。客户端可以在收到消息时确认消息,也可以在客户端完全处理完消息后确认。 生产者确认会影响性能,如果需要很高的吞吐量,应禁用生产者确认。注意,不使用生产者确认会导致可靠性下降。 更多关于消息确认机制的说明,请参考Consumer Acknowledgements
信队列,该消息将会被丢弃。 更多关于死信的说明,请参考Dead Letter Exchanges。 在RabbitMQ中,使用死信可能会对性能产生负面影响,请慎用。 使用队列参数配置死信交换机和路由 为队列配置死信交换机,并在创建队列时指定“x-dead-letter-excha
表2 稳定性差异 功能项 AMQP-0-9-1版本 开源RabbitMQ 消息堆积 海量消息堆积能力,高性能不受消息堆积影响。 抗堆积能力差,容易引发内存问题而导致宕机。 弹性能力 集群分布式无主架构,能够横向快速地扩容集群规模。 通过变更机器规格来扩容、缩容。 服务可用性 99.
true:打开SSL加密访问。 false:不打开SSL加密访问。 storage_spec_code String 是 存储IO规格。如何选择磁盘类型请参考磁盘类型及性能介绍。 取值范围: dms.physical.storage.normal: dms.physical.storage.high dms.physical
持久化是将内存中的消息写入到磁盘中,以防异常情况导致内存中的消息丢失。但是磁盘的读写速度远不如内存,开启消息持久化后,RabbitMQ的性能会下降。与惰性队列不同,持久化消息会在磁盘和内存中各存储一份,只有在内存空间不够时,才会将内存中的消息删除,存储到磁盘中。 非持久化的Qu
false:不打开SSL加密访问。 storage_spec_code 是 String 存储IO规格。 如何选择磁盘类型请参考磁盘类型及性能介绍。 取值范围: dms.physical.storage.high.v2 dms.physical.storage.ultra.v2 dms
身的安全,涵盖华为云数据中心的物理环境设施和运行其上的基础服务、平台服务、应用服务等。这不仅包括华为云基础设施和各项云服务技术的安全功能和性能本身,也包括运维运营安全,以及更广义的安全合规遵从。 租户:负责云服务内部的安全,安全地使用云。华为云租户的安全责任在于对使用的IaaS、