活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      文档中心

      分布式消息服务RabbitMQ

      分布式消息服务RabbitMQ

        • 产品动态
        • 服务公告
        • 2024
        • 【优惠】正式开放2年7折,3年5折包年折扣
        • 【优惠】分布式消息服务RabbitMQ增加包年优惠折扣和产品资费进一步下调
        • 【降价】分布式消息服务RabbitMQ产品资费价格下调
        • 【通知】云原生引擎调整为白名单特性
        • 【通知】通用型主机规格调整为白名单特性
        • 产品简介
        • 产品定义
        • 产品优势
        • 功能特性
        • 应用场景
        • 分布式消息产品选型
        • 产品规格
        • 安全方案
        • 使用限制
        • 名词解释
        • 与其他服务关系
        • 计费说明
        • 产品资费
        • 新资费
        • 旧资费
        • 计费项
        • 计费模式
        • 续费、到期与欠费
        • 退订
        • 变更配置
        • 快速入门
        • 入门指引
        • 环境准备
        • 购买实例
        • 创建资源
        • 编译工程生产消费
        • 用户指南
        • 创建实例
        • 实例管理
        • 查看实例
        • 实例概览
        • 连接实例
        • 修改实例
        • 实例退订
        • 实例扩容
        • 按需转包周期
        • 虚拟主机管理
        • 创建虚拟主机
        • 查看虚拟主机
        • 删除虚拟主机
        • 用户管理
        • 连接管理
        • 信道管理
        • 操作策略管理
        • 虚拟主机限制管理
        • 交换器管理
        • 队列管理
        • 监控指标
        • 高级特性
        • 惰性队列
        • 消息持久化
        • 死信和TTL
        • Rabbitmq消息确认机制
        • 预取值
        • 心跳检测
        • 单一活跃消费者
        • 仲裁队列
        • 开发指南
        • 概述
        • 收集连接信息
        • Java
        • Python
        • 最佳实践
        • RabbitMQ元数据迁移
        • 如何实现RabbitMQ的高性能
        • RabbitMQ接入
        • 获取SDK
        • 接入方式
        • 代码示例
        • 消息幂等
        • 网络异常自动恢复
        • 节点重启后消费者如何重连
        • 使用AMQProxy解决PHP等客户端Connection复用问题
        • API参考
        • API使用说明
        • SDK参考
        • SDK概述
        • 常见问题
        • 计费类
        • 购买类
        • 操作类
        • 管理类
        • 相关协议
        • 服务等级协议
        • 服务条款
          无相关产品

          本页目录

          帮助中心分布式消息服务RabbitMQ常见问题操作类
          操作类
          更新时间 2024-12-11 14:21:33
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          最近更新时间: 2024-12-11 14:21:33
          分享文章
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          本节介绍了分布式消息服务RabbitMQ产品常见操作类问题。

          无法被路由的消息,去了哪里?

          如果没有任何设置,无法路由的消息会被直接丢弃。

          无法路由的情况:Routing key不正确。

          解决方案:

          1.使用mandatory=true配合ReturnListener,实现消息回发。

          2.声明交换机时,指定备份交换机。

          多个消费者监听一个队列时,消息如何分发?

          1.Round-Robin(轮询)

          默认的策略,消费者轮流、平均地收到消息。

          2.Fair dispatch(公平分发)

          如果要实现根据消费者的处理能力来分发消息,给空闲地消费者发送更多消息,可以用basicQos(int prefetch_count)来设置。prefetch_count含义:当消费者有多条消息没有响应ACK时,不再给这个消费者发送消息。

          消息在什么时候会变成Dead Letter(死信)?

          1.消息被拒绝并且没有设置重新入队:(NACK || Reject ) && requeue == false

          2.消息过期(消息或者队列的TTL设置)

          3.消息堆积,并且队列达到最大长度,先入队的消息编程DL。

          解决方案:可以在声明队列时,指定一个Dead Letter Exchange,来实现Dead Letter的转发,保证消息不会丢失。

          如何进行消息持久化?

          所谓持久化,就是RabbitMQ将内存中的数据(比如交换机、队列、消息等)固化到磁盘,以防止异常情况的发生时造成数据丢失。

          持久化分类 说明
          交换机持久化 在创建Exchange时设置durable参数参数。channel.exchangeDeclare(EXCHANGE_NAME, "direct", true);
          队列持久化 同样也是设置设置durable参数。持久化的队列会存盘,在服务器重启的时候可以保证不丢失相关信息。channel.queueDeclare(QUEUE_NAME, true, false, false, null);
          消息持久化 即使交换机、队列持久化不会因为重启丢失,但是存储在队列中的消息仍然会丢失。解决的办法就是设置消息的投递模式为2,即代表持久化(JAVA)。理论上,可以将所有的消息都设置为持久化,但是这会严重影响RabbitMQ性能,因为写入到磁盘的速度可比写入到内存的速度慢非常多。因此,在选择是否要持久化消息时,需要在可靠性和吞吐量之间做一个权衡。

          RabbitMQ专享实例是否支持公网访问?

          RabbitMQ专享实例支持公网访问。

          在创建RabbitMQ专享实例的“更多”选项中,选择开启“公网访问”可自主控制是否进行公网访问,并选择已购买的弹性IP及带宽。或创建完后,在实例详情页中将公网访问开关打开。

          RabbitMQ实例是否支持跨VPC和跨子网访问?

          RabbitMQ实例支持跨VPC和子网访问,可以通过创建VPC对等连接,将两个VPC的网络打通,实现跨VPC访问实例。

          SSL方式连接RabbitMQ实例失败?

          首先排查安全组的入方向规则,是否放开了端口5671(SSL方式访问)或5672(非SSL访问)。

          其次,参考如下内容配置SSL单向认证:

              ConnectionFactory factory = new ConnectionFactory();
          
              factory.setHost(host);
          
              factory.setPort(port);
          
              factory.setUsername(user);
          
              factory.setPassword(password);
          
              factory.useSslProtocol();
          
              Connection connection = factory.newConnection();
          
              Channel channel = connection.createChannel(); 
          

          客户端是否可以通过DNAT方式访问RabbitMQ实例?

          可以。

          为什么RabbitMQ集群只有一个连接地址?

          RabbitMQ集群实例的连接地址,实际上是实例的LVS节点地址(负载均衡地址),客户端连接实例时,通过负载均衡器将客户端请求分发到集群实例的各个节点。

          RabbitMQ实例集群的队列是否有备份?

          RabbitMQ实例默认开启了镜像队列,会在集群中多个代理上备份队列的副本,当某个代理故障,集群会从其他正常的代理中选择一个代理,用来同步队列数据。

          RabbitMQ支持双向认证吗?

          不支持。

          RabbitMQ实例是否支持扩容?

          不支持。

          RabbitMQ实例是否支持修改可用区?

          不支持,您可以重新购买实例,以满足可用区要求。

          RabbitMQ客户端连接报错原因分析?

          RabbitMQ客户端连接失败,可能原因包括地址、端口填错、用户名或者密码填错。

          连接地址不正确

          Exception in thread "main"java.net.SocketTimeoutException: connect timed out
          at java.net.PlainSocketImpl.socketConnect(NativeMethod)
          at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
          

          端口不正确

          Exception in thread "main"java.net.ConnectException:Connection refused (Connection refused)
          at java.net.PlainSocketImpl.socketConnect(NativeMethod)
          at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
          at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
          

          用户名或密码错误

          Exception in thread "main"com.rabbitmq.client.AuthenticationFailureException: ACCESS_REFUSED -Login was refused using authentication mechanism PLAIN. For details
           see the broker logfile.
          at com.rabbitmq.client.impl.AMQConnection.start(AMQConnection.java:351)
          at com.rabbitmq.client.impl.recovery.RecoveryAwareAMQConnectionFactory.newConnection(RecoveryAwareAMQConnectionFactory.java:64)
          

          RabbitMQ实例是否支持不同的子网?

          支持。

          客户端与实例在相同VPC内,可以跨子网段访问。同一个VPC内的子网默认可以进行通信。

          客户端与实例在不同VPC时,需建立VPC对等连接。

          客户端是否可以连接同个RabbitMQ下多个Vhost?

          客户端可以连接同个RabbitMQ下多个Vhost。

          Vhost(Virtual Hosts虚拟主机)是RabbitMQ的基本特性,每个Vhost相当于一个独立的虚拟消息服务器,每个Vhost数据目录不同,拥有自己的队列、交换器和权限控制机制。性能上,连接多个Vhost和单独使用一个Vhost差别不大。

          消息创建时间在哪设置?

          消息创建时间是在生产消息时由生产客户端设置。

          RabbitMQ是否支持跨Region部署?

          不支持跨Region部署。

          如何清空队列数据?

          (1)进入“分布式消息服务RabbitMQ”控制中心;

          (2)在“实例列表”页面点击对应的RabbitMQ实例;

          (3)在“队列管理”页面点击要清空的队列;

          (4)在“清除消息”页面点击清空队列。

          AgAABTXIByWfE78xUMJGu7R1PF9xZnmu.png

          RabbitMQ支持升级CPU和内存吗?

          RabbitMQ支持扩容规格。

          如何设置Message ID?

          如需追踪和识别消息,可以在分布式消息服务RabbitMQ的Producer客户端设置Message ID属性,为每条消息设置唯一标识符。

          在分布式消息服务RabbitMQ的Producer客户端设置Basic.Properties的messageid属性。示例代码如下:

          AMQP.BasicProperties props =newAMQP.BasicProperties.Builder().messageId("messageid").build();
          channel.basicPublish("ExchangeName","RoutingKey",true, props,("消息发送Body").getBytes());
          

          Message ID(消息标识符)是消息的可选属性,类型为String。Message ID在业务上通常被设置为唯一,适用于追踪和识别销售单、工单等需要保证消息唯一的场景。分布式消息服务RabbitMQ服务端不会对消息进行幂等处理。如需实现消息幂等,即如果消息重试多次,消费者端对该重复消息消费多次与消费一次的结果是相同的,并且多次消费没有对系统产生副作用,在为每条消息设置唯一Message ID的基础上,还需要在分布式消息服务RabbitMQ的Consumer客户端对消息进行幂等处理。

          RabbitMQ使用的版本是多少?

          服务端RabbitMQ的版本有3.8.9和3.8.35。

          RabbitMQ实例SSL连接的协议版本号是多少?

          服务端支持协议版本号:SSL v3、TLS v1、TLS v1.1、TLS v1.2、TLS v1.3。

          文档反馈

          建议您登录后反馈,可在建议与反馈里查看问题处理进度

          鼠标选中文档,精准反馈问题

          选中存在疑惑的内容,即可快速反馈问题,我们会跟进处理

          知道了

          上一篇 :  购买类
          下一篇 :  管理类
          搜索 关闭
          ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
          公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
          备案 京公网安备11010802043424号 京ICP备 2021034386号
          ©2025天翼云科技有限公司版权所有
          京ICP备 2021034386号
          备案 京公网安备11010802043424号
          增值电信业务经营许可证A2.B1.B2-20090001
          用户协议 隐私政策 法律声明