正在生成
详细信息:
检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
设置队列负载均衡 方案概述 在RabbitMQ集群上,由于扩容节点、删除队列等原因,会导致队列在各个节点分布不均衡,从而造成部分节点压力过大,无法更有效地利用集群。 这时候需要手动设置节点间队列的负载均衡,提升集群的利用率。设置队列负载均衡的方法如下: 删除队列重建 通过Policy修改master节点方式
为什么RabbitMQ集群只有一个连接地址? RabbitMQ集群实例的连接地址,实际上是实例的LVS节点地址(负载均衡地址),客户端连接实例时,通过负载均衡器将客户端请求分发到集群实例的各个节点。 图1 连接示意图 父主题: 连接问题
RabbitMQ集群实例如何均衡分发请求到每个虚拟机? 集群内部使用LVS做负载均衡,由LVS将请求均衡分发到每个虚拟机节点。 父主题: 实例问题
35版本:在创建RabbitMQ实例时开启“公网访问”,或创建完后,在实例详情页中将公网访问开关打开。 RabbitMQ AMQP-0-9-1版本:在弹性负载均衡控制台绑定公网IP地址。 父主题: 连接问题
限制使用优先队列的数量 每个优先队列会启动一个Erlang进程,过多的优先队列会影响性能。在大多数情况下,建议使用不超过5个优先队列。 连接和通道 每个连接使用大约100 KB的内存(如果使用TLS会更多),成千上万的连接会导致RabbitMQ负载很高,极端情况下,会导致内存溢出。AMQP协
作为消费者消费消息,连接IP地址是相同的,如图1所示,此时我们无法区分哪个是生产者IP地址,哪个是消费者IP地址。如果想要直观体现生产者/消费者IP地址,您可以在客户端中设置“clientProperties”参数,通过此参数来标明生产者/消费者IP地址,示例如下。 //配置客户端连接参数
布式消息服务RabbitMQ版提供的一系列常用实践。 表1 常用最佳实践 实践 描述 设置队列负载均衡 扩容节点、删除队列可能会导致队列在各个节点分布不均衡,本文介绍如何设置队列负载均衡。
单击“公网访问”右侧的,打开公网访问开关。 从“弹性IP地址”下拉列表中选择一个弹性IP,然后单击,开启公网访问功能。 如果“弹性IP地址”下拉列表没有值,可单击“创建弹性IP”,跳转到弹性公网IP页面,您可以申请一个新的弹性IP。弹性IP申请完后,返回RabbitMQ控制台,单击“弹性IP地址”后的,然后在下拉列表中选择新申请的弹性IP。
RabbitMQ集群实例使用LVS进行负载均衡,如图1所示,单节点实例不涉及LVS。 图1 集群实例的负载均衡 LVS对客户端连接设置了心跳超时时间,默认为90秒。如果客户端在90秒内没有向LVS发送心跳(AMQP心跳帧或消息收发),LVS会主动断开与客户端的连接,此时客户端需要重新连接。
生产者发送消息的耗时,单位毫秒。 地址 生产者的IP地址。 消费者状态 消费者状态如下: 消费成功 消费超时 消费异常 消费返回NULL 消费失败 消费时间 消费消息的时间。 消费耗时 消费者消费消息的耗时,单位毫秒。 地址 消费者的IP地址。 父主题: 管理消息
则。 弹性IP地址 如果客户端使用公网连接RabbitMQ实例,请提前创建弹性IP地址。 在创建弹性IP地址时,应注意如下要求: 创建的弹性IP地址与RabbitMQ实例在相同的区域。 RabbitMQ控制台无法识别开启IPv6转换功能的弹性IP地址。 创建弹性IP地址的操作指导请参考申请弹性公网IP。
username:原实例登录RabbitMQ WebUI的账号 password:原实例登录RabbitMQ WebUI的密码 ip:原实例登录RabbitMQ WebUI的IP地址 port:原实例登录RabbitMQ WebUI的端口号 回显信息中“messages_ready”和“messages_unackn
RabbitMQ实例支持通过筛选来查询对应的RabbitMQ实例。当前支持的筛选条件为状态、名称、版本、实例类型、规格、已用/可用存储空间、计费模式、连接地址、弹性IP地址、企业项目和标签。企业用户才能使用企业项目进行筛选。RabbitMQ实例状态请参见表1。 表1 RabbitMQ实例状态说明 状态 说明
规格 测试参数如下: Exchange:类型为“direct”,非持久化,不会自动删除。 队列:类型“经典队列”,数量为“3”,非持久化,会自动删除。 生产者:数量为“3”。 消费者:数量为“3”。 表2 测试结果 实例规格 磁盘类型 代理数量 生产速率 消费速率 rabbitmq
1所示。 表1 版本功能差异 功能项 3.8.35 AMQP-0-9-1 SSL √ × 公网访问 在RabbitMQ控制台开启公网 在ELB控制台绑定公网 仲裁队列 √ × 镜像队列 √ × 优先级队列 √ × 插件 √ × Web UI √ × 重置实例密码 √ × 变更实例规格
系统策略 无 DMS KMSAccess 分布式消息服务租户委托时需要授权的KMS操作权限。 系统策略 无 DMS ELBAccess 分布式消息服务租户委托时需要授权的ELB操作权限。 系统策略 无 DMS VPCEndpointAccess 分布式消息服务租户委托时需要授权的VPCEndpoint操作权限。
连接RabbitMQ网络要求 客户端可以通过公网连接RabbitMQ实例,也可以通过内网连接RabbitMQ实例。使用内网连接时,注意以下几点: 如果客户端和RabbitMQ实例部署在同一个VPC内,网络默认互通。 如果客户端和RabbitMQ实例部署在不同VPC中,由于VPC之
使用客户端连接RabbitMQ(开启SSL) 本章节以分布式消息服务RabbitMQ版提供的demo为例,介绍RabbitMQ客户端如何连接开启SSL的RabbitMQ实例,并生产和消费消息。开启SSL访问,则数据加密传输,安全性更高。 前提条件 已购买RabbitMQ实例,并记
使用客户端连接RabbitMQ(关闭SSL) 本章节以分布式消息服务RabbitMQ版提供的demo为例,介绍RabbitMQ客户端如何连接未开启SSL的RabbitMQ实例,并生产和消费消息。 前提条件 已购买RabbitMQ实例,并记录创建时输入的用户名和密码,实例未开启SSL。
查询指定实例 当前页面API为历史版本API,未来可能停止维护。请使用查询指定实例。 功能介绍 查询指定实例的详细信息。 URI GET /v1.0/{project_id}/instances/{instance_id} 参数说明见表1。 表1 参数说明 参数 类型 必选 说明