检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
测试实例性能 测试RabbitMQ生产速率和消费速率
提高RabbitMQ性能 本章节基于吞吐量和可靠性两个指标,指导您通过设置队列长度、集群负载均衡、优先队列数量等参数,实现RabbitMQ的高性能。 使用较小的队列长度 队列中存在大量消息时,会给内存使用带来沉重的负担。为了释放内存,RabbitMQ会将消息刷新到磁盘。
父主题: 测试实例性能
云硬盘(Elastic Volume Service) 云硬盘为云服务器提供块存储服务,RabbitMQ的所有数据(如消息和日志等)都保存在云硬盘中。
此数据仅供参考,生产使用需要以实际压测性能为准。 服务端的性能主要跟以下因素相关:队列数、消息堆积、连接数、channel、消费者数、镜像队列、优先级队列、消息持久化和exchange类型等,在选择实例规格时,请根据业务模型压测结果选择。
16 ~ 16:00:00间产生费用 按需:2023/04/18 16:00:00 ~ 2023/04/18 17:00:00,在16:00:00 ~ 16:30:30间产生费用 包年/包月:2023/04/18 16:30:30 约束与限制 按需计费RabbitMQ实例绑定的云硬盘随
高性能 单队列性能最高可达10万TPS(默认配置),增加队列可获得更高性能。 数据安全 独有的安全加固体系,提供业务操作云端审计,消息存储加密等有效安全措施。 在网络通信方面,除了提供SSL认证,还借助虚拟私有云(VPC)和安全组等加强网络访问控制。
存储空间费用 计费因子:云硬盘类型、容量 说明: 存储空间在账单中显示的产品名称为“分布式消息服务物理多租存储”,如图1所示。 包年/包月、按需计费 云硬盘单价 * 购买时长 云硬盘单价请参见分布式消息服务RabbitMQ版价格详情中的“存储价格”。
提高RabbitMQ性能 本章节介绍如何通过设置队列长度、集群负载均衡、优先队列数量等参数,实现RabbitMQ的高性能。 设置队列负载均衡 本章节介绍如何设置节点间队列的负载均衡,提升集群的利用率。
例如:CPU、内存、云硬盘等资源的利用率。 监控闲置的资源,避免浪费。例如:未挂载的云硬盘、未绑定的EIP等。 计费模式优化 不同类型的业务对资源使用周期有不同的要求,为每一类业务确定合适的计费模式,灵活组合以达到最优效果。 针对长期稳定的成熟业务,使用包年/包月计费模式。
但是磁盘的读写速度远不如内存,开启消息持久化后,RabbitMQ的性能会下降。与惰性队列不同,持久化消息会在磁盘和内存中各存储一份,只有在内存空间不够时,才会将内存中的消息删除,存储到磁盘中。 非持久化的Queue、Exchange在重启之后会丢失。
在“服务列表”中选择云硬盘(假设当前策略仅包含DMS ReadOnlyAccess),若提示权限不足,表示“DMS ReadOnlyAccess”已生效。
队列对性能(吞吐量)的要求不是非常高,例如TPS 1万以下的场景。 希望队列有稳定的生产消费性能,不受内存影响而波动。 处于以下情况时,无需使用惰性队列: RabbitMQ需要高性能的场景。 队列总是很短(即队列中没有消息堆积)。 设置了最大长度策略。
生产者确认会影响性能,如果需要很高的吞吐量,应禁用生产者确认。注意,不使用生产者确认会导致可靠性下降。 更多关于消息确认机制的说明,请参考Consumer Acknowledgements and Publisher Confirms。
性能上,连接多个Vhost和单独使用一个Vhost差别不大,只是RabbitMQ进程多一些对象,建议使用业务模型实测。 Vhost的相关介绍,请参考官网文档Virtual Hosts。 父主题: 连接问题
镜像队列主要的缺陷在于消息同步的性能低。 镜像队列包含一个主队列和多个从队列,当生产者向主队列发送一条消息,主队列会将消息同步给从队列,所有的从队列都保存消息后,主队列才会向生产者发送确认。
设置预取值时,需要考虑多种因素: 预取值设置太小可能会损害性能,RabbitMQ会一直在等待获得发送消息的权限。 预取值设置太大可能会导致从队列中取出大量消息传递给一个消费者,而使其他消费者处于空闲状态。
稳定性 表2 稳定性差异 功能项 AMQP-0-9-1版本 开源RabbitMQ 消息堆积 海量消息堆积能力,高性能不受消息堆积影响。 抗堆积能力差,容易引发内存问题而导致宕机。 弹性能力 集群分布式无主架构,能够横向快速地扩容集群规模。 通过变更机器规格来扩容、缩容。
在RabbitMQ中,使用死信可能会对性能产生负面影响,请慎用。 使用队列参数配置死信交换机和路由 为队列配置死信交换机,并在创建队列时指定“x-dead-letter-exchange”和“x-dead-letter-routing-key”参数。
这不仅包括华为云基础设施和各项云服务技术的安全功能和性能本身,也包括运维运营安全,以及更广义的安全合规遵从。 租户:负责云服务内部的安全,安全地使用云。