活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 安全隔离版OpenClaw NEW OpenClaw云服务器专属“龙虾“套餐低至1.5折起
  • 青云志云端助力计划 NEW 一站式科研助手,海外资源安全访问平台,助力青年翼展宏图,平步青云
  • 云上钜惠 爆款云主机全场特惠,2核4G只要1.8折起!
  • 中小企业服务商合作专区 国家云助力中小企业腾飞,高额上云补贴重磅上线
  • 出海产品促销专区 NEW 爆款云主机低至2折,高性价比,不限新老速来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

息壤智算

领先开放的智算服务平台,提供算力、平台、数据、模型、应用“五位一体”智算服务体系,构建全流程的AI基础设施能力
AI Store
  • 算力市场
  • 模型市场
  • 应用市场
  • MCP市场
公共算力服务
  • 裸金属
  • 定制裸金属
训推服务
  • 模型开发
  • 训练任务
  • 服务部署
模型推理服务
  • 模型广场
  • 体验中心
  • 服务接入
应用托管
  • 应用实例
科研助手
  • 科研智能体
  • 科研服务
  • 开发机
  • 并行计算
大模型
  • DeepSeek-V3.1
  • DeepSeek-R1-0528
  • DeepSeek-V3-0324
  • Qwen3-235B-A22B
  • Qwen3-32B
智算一体机
  • 智算一体机
模型适配专家服务
  • 模型适配专家服务
算力服务商
  • 入驻算力服务商

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场进入AI Store创新解决方案公有云生态专区智云上海应用生态专区
建站工具
  • 新域名服务
  • SSL证书
  • 翼建站
企业办公
  • 安全邮箱
  • WPS 365 天翼云版
  • 天翼企业云盘(标准服务版)
灾备迁移
  • 云管家2.0
  • 翼备份(SaaS版)

定价

协助您快速了解云产品计费模式、价格详情,轻松预估上云成本
价格计算器
  • 动态测算产品价格
定价策略
  • 快速了解计费模式

合作伙伴

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

开发者

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

支持与服务

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

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 息壤智算
  • 产品
  • 解决方案
  • 应用商城
  • 定价
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      消息队列RocketMQ版_相关内容
      • Kafka触发器
        Kafka触发器可以订阅天翼云提供的分布式消息队列Kafka实例,并根据消息触发关联的函数,借此能力,使得函数可以消费指定Topic的消息,执行自定义处理逻辑。 注意事项 Kafka触发器订阅的Kafka实例必须和函数计算的函数实例在相同地域。 前提条件 已创建函数。 已开通分布式消息Kafka实例(KAFKA引擎版),详情请参考创建分布式消息服务Kafka实例。 已创建Topic,创建GroupID(可选)。 操作步骤 1. 登录函数计算控制台,点击目标函数,进入函数详情。 2. 选择详情下顶部的配置选项卡。 3. 在配置选项卡 中,选择左边的触发器选项卡。 4. 点击创建触发器 ,在弹出的右抽屉中选择Kafka触发器,配置参数解释如下。 配置项 操作 示例 触发器类型 选择Kafka触发器。 Kafka触发器 名称 填写自定义的触发器名称。 kafkatrigger 版本或别名 默认值为LATEST,支持选择任意函数版本或函数别名。 LATEST Kafka 实例 选择已创建的Kafka实例。 Topic 选择已创建的Kafka实例的Topic。 Group ID 快速创建:推荐方案。自动创建以 GROUPFCTrigger{triggername}{uuid} 命名的 Group ID。 使用已有:选择Kafka实例已有的GroupID,请您注意不要与已有的业务混用GroupID,否则会影响已有的消息收发。 消费任务并发数 消费者的并发数量,有效取值范围为[1,20],建议不超过Topic的分区数。该值同时影响投递到函数的并发数。 消费位点 选择消息的消费位点,即触发器从kafka消息队列开始拉取消息的位置。 最早位点 :从最早位点开始消费。 最新位点:从最新位点开始消费。 最新位点 调用方式 选择函数调用方式。 同步调用 :指触发器消费topic消息后投递到函数是同步调用,会等待函数响应后继续下一个消息投递。但消费任务并发数大于1时,多个消费者有可能会并发消费消息并投递,并发的情况视Topic队列本身积存的消息而定。 异步调用:指触发器消费topic消息后投递到函数是异步调用,不会等待函数响应,可以快速消费事件。 同步调用 触发器启用状态 创建触发器后是否立即启用。默认选择开启,即创建触发器后立即启用触发器。 启用 推送配置 批量推送条数:批量推送的最大值,积压值达到后立刻推送,取值范围为 [1, 10000]。 批量推送间隔:批量推送的最大时间间隔,达到后立刻推送,单位秒,取值[0,15]。默认0无需等待,数据直接推送。 推送格式:函数收到的事件格式,详情请查阅触发器事件消息格式。 重试策略 消息推送函数失败后重试的策略,共两种: 指数退避:指数退避重试,重试5次,重试周期为2,4,8,16,32(秒)。 线性退避:线性退避重试,重试5次,重试周期为1,2,3,4,5(秒)。 容错策略 当重试次数耗尽后仍然失败时的处理方式: 允许容错:当异常发生并超过重试策略配置时直接丢弃。 禁止容错:当异常发生并超过重试策略配置时继续阻塞执行。 死信队列 当容错策略为:允许容错时,可以额外开启死信队列。当开启死信队列时且异常发生并超过重试策略配置时,消息会被投递到指定的消息队列里,当前只支持投递到kafka和rocketmq
        来自:
        帮助文档
        函数计算
        用户指南
        事件触发
        Kafka触发器
      • 变更实例规格
        本章节介绍了如何变更分布式消息服务RocketMQ实例规格,以及扩容存储空间、扩容代理个数。 操作场景 RocketMQ实例创建成功后,您可以根据业务需要,扩容存储空间和代理个数。不支持同时扩容存储空间和代理个数,如果需要可以分别进行扩容。 当前只支持扩容,不支持缩容 。扩容存储空间有次数限制,只能扩容20次。扩容代理个数,可以扩大总分区数。 前提条件 已创建RocketMQ实例,且实例状态为“运行中”。 操作步骤 1. 登录分布式消息服务RocketMQ控制台。 2. 通过以下任意一种方法,变更实例规格。 在待变更规格的实例所在行,单击“更多 > 变更规格”。 单击RocketMQ实例名称,进入实例详情页面。单击右上角的“更多 > 变更规格”。 3. 根据实际情况选择扩容存储空间或者代理个数。 不支持同时扩容存储空间和代理个数,如果需要可以分别进行扩容。 图1 变更实例规格 扩容存储空间。 在“变更方式”中,选择“存储扩容”,在“单个代理存储空间”中,选择扩容后的单个代理的存储空间大小,单击“下一步”。确认扩容信息无误后,单击“提交”。 在实例列表页面的“可用存储空间”中查看扩容后的总存储空间大小(即扩容后的单个代理的存储空间代理个数)。 说明: 扩容存储空间不会影响业务。 可用存储空间实际存储空间用于存储日志的存储空间格式化磁盘的损耗。 例如,实际扩容存储空间到700GB,用于存储日志的存储空间为100GB,格式化磁盘损耗7GB,那么扩容后的可用存储空间为593GB。 扩容代理个数。 在“变更方式”中,选择“代理扩容”,在“代理个数”中,选择扩容后的代理个数,单击“下一步”。确认扩容信息无误后,单击“提交”。 在实例列表页面的“规格”中查看扩容后的代理个数。 说明: 扩容代理个数不会影响原来的代理,业务也不受影响。 新创建的Topic才有可能创建在新代理上,原来Topic还分布在原有代理上,如果需要使用新扩容的代理,可以通过新建Topic来实现。 已开启公网访问,且设置了弹性IP地址的实例,在扩容代理个数时,需要为新扩容的代理设置弹性IP地址。
        来自:
        帮助文档
        分布式消息服务RocketMQ
        用户指南
        实例管理
        变更实例规格
      • 使用限制
        分类 组件 版本 微服务 org.springframework.cloud:springclouddependencies 2021.0.8 微服务 org.springframework.boot:springbootstarterweb 2.7.12 微服务 org.springframework.cloud:springcloudstarteropenfeign 3.1.8 微服务 org.apache.dubbo:dubbo 2.7.13 负载均衡 org.springframework.cloud:springcloudloadbalancer 3.1.7 微服务注册中心 com.alibaba.cloud:springcloudstarteralibabanacosdiscovery 2021.1 消息队列 org.apache.rocketmq:rocketmqclient 4.8.0 数据库 mysql:mysqlconnectorjava 5.1.40及以上版本 8.0.15及以上版本 数据库 org.postgresql:postgresql 42.5.0及以上版本
        来自:
        帮助文档
        应用高可用
        产品简介
        应用容灾多活
        使用限制
      • 仪表盘
        使用场景 RabbitMQ仪表盘支持实时监控消息流、排查生产消费异常、配置与维护队列 / 交换机 / 绑定、权限管理及集群状态查看,是 RabbitMQ 运维与开发调试的核心工具。 指标说明 指标 指标含义 可消费消息数 队列中已经准备好等待消费者去获取和处理的消息数量。 连接数 当前与 RabbitMQ 服务器建立的 TCP 连接总数。每个生产者或消费者客户端都需要与 RabbitMQ 建立一个 TCP 连接。 信道数 在所有 TCP 连接上打开的 AMQP 信道总数。信道是在 TCP 连接内部建立的虚拟连接,用于多路复用,以减少建立和关闭 TCP 连接的开销。 消费者数 当前所有队列上注册的消费者总数。一个消费者可以监听一个或多个队列。 交换器生产速率 单位时间内发送到某个交换器的消息数量。 交换器消费速率 单位时间内从某个交换器路由到其绑定队列的消息数量。 队列生产速率 单位时间内发送到某个队列的消息数量。 队列消费速率 单位时间内从某个队列成功投递给消费者并收到确认(ACK)的消息数量。 队列可消费消息数 某个队列中当前处于 "Ready" 状态的消息数量。 队列消费者数 当前正在监听某个队列的消费者数量。 VHost连接数 当前连接到某个特定 VHost 的 TCP 连接总数。 VHost信道数 当前在某个特定 VHost 的所有连接上打开的信道总数。 VHost每个连接的信道数 某个 VHost 的信道总数除以其连接总数得到的平均值。
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        用户指南
        仪表盘
      • 重置消费位置
        场景描述 在RocketMQ中,重置消费位置是一个常见的场景,用于重新设置消费者对消息队列的消费位置。以下是一些常见的RocketMQ重置消费位置的场景描述: 消费者异常停止后的重启:当消费者由于某种原因异常停止后,重新启动时可能需要重置消费位置。例如,消费者在处理消息时发生故障导致停止,重新启动后可以选择从上次消费的位置继续消费,或者从最早的消息开始重新消费。 消费者消费进度错误或需要重新处理:在某些情况下,消费者的消费进度可能出现错误,或者需要重新处理之前未正确处理的消息。此时,可以选择重置消费位置,将消费者的消费进度重置到指定的位置,从而重新消费或重新处理消息。 消费者切换消费模式:当消费者从集群模式切换到广播模式,或者从广播模式切换到集群模式时,可能需要重置消费位置。因为在不同的消费模式下,消费者对消息队列的消费位置和进度管理方式是不同的。 消费者消费速度过慢导致消息堆积:当消费者的消费速度过慢,无法及时处理消息时,可能会导致消息堆积。为了加快消息的消费速度,可以选择重置消费位置,将消费者的消费进度重置到最新的消息位置,从而快速消费积压的消息。 在进行消费位置重置时,需要注意以下几点: 确定重置的目标位置:在重置消费位置之前,需要确定重置的目标位置,可以选择从最早的消息位置开始消费,或者从指定的消息位置开始消费。 谨慎操作:重置消费位置是一个敏感操作,需要谨慎处理。在重置消费位置之前,建议备份相关数据,以防止数据丢失或处理错误。 考虑消费者组和消息模式:在重置消费位置时,需要考虑消费者组和消息模式的影响。不同的消费者组和消息模式可能对消费位置重置有不同的要求和限制。 总之,重置消费位置是一个常见的操作,可以帮助解决消费者异常停止、消费进度错误或重新处理消息等情况。但在进行操作时,需要谨慎评估和处理,确保不会对业务和数据产生不可逆的影响。
        来自:
        帮助文档
        分布式消息服务RocketMQ
        用户指南
        Topic管理
        重置消费位置
      • 消息堆积对业务的影响及解决办法
        本文主要介绍消息堆积对业务的影响及解决办法。 消息堆积对业务的影响 过量的消息堆积可能会引起内存或磁盘告警,从而造成所有connection阻塞,进而影响到其他队列的使用,导致整体服务质量的下降。 消息堆积产生的原因 1. 一般来说消息堆积是由于生产消息的速率远大于消费消息的速率所导致的。比如某个时间段消费端处理消息异常缓慢,发送一条消息只要3秒钟,而消费一条消息需要1分钟,每分钟发送20个消息,只有一个消息被消费端处理,这样队列中就会产生大量的消息堆积。 2. 消费者出现异常,生产者一直在发送消息,但是消费者不能消费,造成消息积压。 3. 消费者没有出现异常,但是消费者与队列间的订阅可能出现了异常,也会导致消息无法被消费从而造成堆积的情况。 4. 消费者正常,与队列间的订阅也正常,但是消费端的代码本身逻辑耗费时间长导致了消费能力降低,这时候就会出现1中的情况从而导致消息堆积。 解决消息堆积的办法 1. 生产速率较快,消费速率较慢 :您可以通过以下方法解决。 增加消费者数量提高消费速率。 采用生产者确认的发送模式,并监控生产端消息生产速度和时长,当消息生产时长有明显增加时进行流控措施。 2. 消费者异常 :建议排查消费者逻辑是不是有问题,优化程序。 3. 消费者与队列间的订阅异常 :建议排查队列和消费者之间的订阅是否正常。 4. 消费端的代码本身逻辑耗费时间长 :建议给消息设置过期时间,设置方法如下: 在生产消息时,设置消息过期时间。消息过期时间以expiration值体现。 在properties中设置expiration值,单位为毫秒(ms)。 AMQP.BasicProperties properties new AMQP.BasicProperties().builder() .deliveryMode(2) .contentEncoding("UTF8") .expiration("10000") .build(); String message "hello rabbitmq"; channel.basicPublish(exchange, routingKey, properties, message.getBytes(StandardCharsets.UTF8)); 在Web界面中设置expiration值,单位为毫秒(ms)。 登录Web界面,在“Exchanges”页签,单击Exchange名称,进入Exchange详情页。在“Publish message”区域,设置expiration值,如下图所示。 设置队列过期时间。队列过期时间以xmessagettl值体现。从消息进入队列开始计算,超过了配置的队列过期时间,消息会自动被删除。 在客户端代码中设置xmessagettl值,单位为毫秒(ms)。 Map arguments new HashMap (); arguments.put("xmessagettl", 10000); channel.queueDeclare(queueName, true, false, false, arguments); 在Web界面新建队列时,设置xmessagettl值,单位为毫秒(ms)。 登录Web界面,在“Exchanges”页签,新建队列时,设置xmessagettl值,如下图所示。
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        常见问题
        复杂操作问题
        消息堆积对业务的影响及解决办法
      • 应用场景
        异步通信 RabbitMQ是一个消息中间件,可以用于异步通信。在用户注册场景中,RabbitMQ可以用于发送和接收注册相关的消息。 下面是一个异步用户注册流程: 1. 用户提交注册表单。 2. 服务器接收到注册请求后,将用户提交的数据写入数据库,并生成一个唯一的用户ID。 3. 服务器将用户ID封装成一个消息,发送到RabbitMQ的注册队列中。 4. 注册队列中的消息被一个或多个消费者监听。 5. 消费者接收到注册消息后,执行注册相关的逻辑,比如发送确认邮件、生成用户账号等操作。 6. 在完成注册逻辑后,消费者可以将结果封装成一个消息,发送到另一个队列中,比如发送注册成功通知给用户。 7. 另一个队列中的消息可以由一个或多个消费者监听,负责处理注册成功通知的逻辑。 使用RabbitMQ实现异步用户注册可以带来以下好处: 解耦:通过将注册请求和注册逻辑解耦,使得系统组件之间的依赖减少。 异步处理:用户不需要等待注册逻辑完成,而是可以立即返回一个成功的响应。真正的注册逻辑可以在后台完成,提高系统的并发能力。 可伸缩性:通过添加更多的消费者来处理注册消息,可以轻松地提高系统的吞吐量。 可靠性:RabbitMQ具备持久化消息的能力,即使在发生故障时也不会丢失消息。 需要注意的是,使用RabbitMQ进行异步通信需要对消息的可靠性进行处理,比如使用事务或者消息确认机制,以确保消息能够被成功处理。 高可用 RabbitMQ提供了多种方式来实现高可用性,确保消息队列的稳定和可靠性。以下是一些常用的方法: 1. 集群模式:RabbitMQ支持将多个节点组成集群,通过在多个节点之间复制消息队列和交换器,实现数据的冗余和高可用性。当一个节点发生故障时,其他节点可以接管其工作,确保消息的连续传递。 2. 镜像队列:RabbitMQ的镜像队列功能可以将队列的数据在多个节点之间进行复制。这样,当一个节点发生故障时,其他节点上的镜像队列可以继续提供服务,确保消息的可靠传递。 3. 自动化故障转移:RabbitMQ支持自动故障转移,当一个节点发生故障时,可以自动将其上的队列和交换器迁移到其他正常的节点上,确保消息的连续处理。 4. 心跳机制:RabbitMQ通过心跳机制来监测节点的健康状态。当一个节点长时间没有响应时,其他节点可以将其标记为不可用,并进行故障转移。 5. 负载均衡:通过在多个节点之间分配消息的处理负载,可以提高系统的吞吐量和可用性。RabbitMQ支持多种负载均衡算法,如轮询、随机等。 6. 数据备份和恢复:为了防止数据丢失,可以定期备份RabbitMQ的数据,并在节点故障时进行数据恢复。 通过以上的方法,可以实现RabbitMQ的高可用性,确保消息队列的稳定运行和数据的可靠传递。但是需要注意的是,高可用性的实现需要根据具体的需求和场景进行配置和调优。
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        产品简介
        应用场景
      • 操作策略管理
        本节介绍了在RabbitMQ实例中如何创建、修改和删除操作策略。 背景信息 RabbitMQ操作策略管理是一种用于管理RabbitMQ服务器的功能,它允许管理员定义和控制各种操作策略以满足特定的需求和约束。 操作策略可以应用于多个方面,包括队列、交换机、绑定和连接等。通过操作策略管理,管理员可以定义以下内容: ● 长度限制:管理员可以设置队列的最大长度,以防止队列无限增长导致资源耗尽。当队列达到指定的长度限制时,可以选择丢弃新的消息或者拒绝新的连接。 ● 时间限制:管理员可以设置队列中消息的最大存活时间,以防止消息在队列中长时间滞留。一旦消息超过指定的时间限制,可以选择将其丢弃或者转发到其他队列。 ● 内存限制:管理员可以设置队列或交换机的最大内存使用量,以防止RabbitMQ服务器的内存资源被过度消耗。当达到指定的内存限制时,可以选择丢弃消息或者拒绝新的连接。 ● 消息优先级:管理员可以为消息设置优先级,以确保重要的消息能够优先处理。可以通过操作策略管理来定义消息优先级的规则和行为。 ● 连接限制:管理员可以设置连接的最大数量,以限制同时连接到RabbitMQ服务器的客户端数量。这可以用于控制系统的负载和资源消耗。 通过操作策略管理,管理员可以根据实际需求和约束对RabbitMQ服务器进行细粒度的控制和管理。这有助于提高系统的可靠性、性能和可伸缩性,并确保消息队列系统能够适应各种场景和负载。
        来自:
      • 同组Consumer订阅关系一致
        RocketMQ里的一个Consumer Group代表一个Consumer群组。对于大多数分布式应用来说,一个Consumer Group下通常会有多个Consumer实例。订阅关系一致指的是同一个Consumer Group下所有Consumer实例的处理逻辑必须完全一致,一旦订阅关系不一致,消息消费的逻辑就会混乱,甚至导致消息丢失。 背景信息 RocketMQ 中一个消费者代表一个Consumer实例群组。在大多数场景中,一个消费者组下面包含多个Consumer实例。 由于分布式消息服务RocketMQ的订阅关系主要由Topic+Tag共同组成,因此,保持订阅关系一致意味着同一个消费者Group ID下所有的Consumer实例订阅关系的一致性大概包括下面几个方面: 同一个消费组订阅的Topic必须一致,例如:在同一个消费组下,ConsumerA订阅Topic1和Topic2,ConsumerB也必须订阅Topic1和Topic2,只订阅Topic1、只订阅Topic2或订阅Topic2和Topic3都是不允许的。 同一个消费者订阅的同一个Topic的场景下Tag必须一致,包括Tag的数量和顺序,例如:ConsumerA订阅Topic1的Tag配置为Tag1Tag2,ConsumerB订阅Topic1的Tag也必须是Tag1Tag2,只订阅Tag1、只订阅Tag2或者订阅Tag2Tag1都是不允许的。 多个不同的Topic可以被多个消费组订阅,但是同一个消费组下的多个Consumer实例订阅Topic和Tag都必须一致。 代码示例 订阅一个Topic、一个Tag 同一个消费组下面的全部消费者实例均订阅一个Topic,且均配置同一个Tag这种是符合订阅关系一致性原则的。 consumer.setConsumerGroup("group1"); consumer.subscribe(topic,"Tag1"); consumer.registerMessageListener((MessageListenerConcurrently)(msgs, context)>{ // do something } 订阅一个Topic多个Tag 每个消费者订阅消息的代码必须一致 consumer.setConsumerGroup("group1"); consumer.subscribe(topic,"Tag1Tag2"); consumer.registerMessageListener((MessageListenerConcurrently)(msgs, context)>{ // do something } 订阅多个Topic且订阅多个Tag consumer.setConsumerGroup("group1"); consumer.subscribe(topic1,"Tag1"); consumer.subscribe(topic2,"Tag1|Tag2"); consumer.subscribe(topic3,""); consumer.registerMessageListener((MessageListenerConcurrently)(msgs, context)>{ // do something }
        来自:
        帮助文档
        分布式消息服务RocketMQ
        最佳实践
        同组Consumer订阅关系一致
      • 名词解释
        本文为您介绍分布式消息服务MQTT的相关术语解释。 实例(Instance) 创建购买消息队列 MQTT 服务的实体单元,包含MQTT Broke和kafka集群节点。 MQTT Broker 消息队列 MQTT 提供的 MQTT 协议交互的服务端节点,用于完成与 MQTT 客户端消息收发和数据存储至消息队列。 MQTT 客户端 用于和 MQTT 服务器交互的移动端节点。 父级 Topic(Parent Topic) MQTT 协议基于 Pub/Sub 模型,因此任何消息都属于一个 Topic。根据 MQTT 协议,Topic 存在多级,定义第一级 Topic 为父级 Topic,需先在控制台创建该父级 Topic。 子级 Topic(Subtopic) MQTT 的二级 Topic,甚至三级 Topic 都是父级 Topic 下的子类。使用时,直接在代码里设置,无需创建。需要注意的是微消息队列 MQTT 限制父级 Topic 和子级 Topic 的总长度为 64 个字符,如果超出长度限制将会导致客户端异常。 Client ID 微消息队列 MQTT 的 Client ID 是每个客户端的唯一标识,要求全局唯一,使用相同的 Client ID 连接消息队列 MQTT服务会被拒绝。 消息队列Kafka MQTT Broker主要承担移动端连接接入、连接管理、数据转发等工作。后端数据持久化和消息存储至kafka消息队列;租户后端应用系统可通过kafka分析、处理数据并下发指令。 终端连接地址 即MQTT Broker端接入地址,设备端使用。 服务端连接地址 即kakfa集群连接地址,云端应用服务使用。 订阅关系 终端设备每订阅一个主题即一个订阅关系。
        来自:
      • 典型应用场景
        本文主要介绍分布式消息服务RabbitMQ的典型应用场景。 RabbitMQ作为一款热门的消息队列中间件,具备高效可靠的消息异步传递机制,主要用于不同系统间的数据交流和传递,在企业解决方案、金融支付、电信、电子商务、社交、即时通信、视频、物联网、车联网等众多领域都有广泛应用。 异步通信 将业务中属于非核心或不重要的流程部分,使用消息异步通知的方式发给目标系统,这样主业务流程无需同步等待其他系统的处理结果,从而达到系统快速响应的目的。 如网站的用户注册场景,在用户注册成功后,还需要发送注册邮件与注册短信,这两个流程使用RabbitMQ消息服务通知邮件发送系统与短信发送系统,从而提升注册流程的响应速度。 图1 串行发送注册邮件与短信流程 图2 借助消息队列异步发送注册邮件与短信流程 错峰流控与流量削峰 在电子商务系统或大型网站中,上下游系统处理能力存在差异,处理能力高的上游系统的突发流量可能会对处理能力低的某些下游系统造成冲击,需要提高系统的可用性的同时降低系统实现的复杂性。电商大促销等流量洪流突然来袭时,可以通过队列服务堆积缓存订单等信息,在下游系统有能力处理消息的时候再处理,避免下游订阅系统因突发流量崩溃。消息队列提供亿级消息堆积能力,3天的默认保留时长,消息消费系统可以错峰进行消息处理。 另外,在商品秒杀、抢购等流量短时间内暴增场景中,为了防止后端应用被压垮,可在前后端系统间使用RabbitMQ消息队列传递请求。 图3 消息队列应对秒杀大流量场景
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        产品简介
        典型应用场景
      • 延迟消息
        延时消息定义 延时消息 是指消息在发送后不会立即投递给消费者,而是在指定的延迟时间之后才可被消费。 开源 RabbitMQ 本身不直接支持原生延时消息语义 ,但可以通过现有机制组合 或官方插件实现类似能力。 应用场景 延时消息适用于需要定时触发或延迟处理的业务场景,例如: 订单超时关闭 下单成功后发送延时消息,30 分钟后检查支付状态,未支付则关闭订单。 提醒通知 预约活动开始前,通过延时消息发送提醒。 任务调度 延迟执行数据清理、报表生成、状态检查等后台任务。 实现方案对比 方案 实现原理 特点 死信队列(DLX)+ TTL 利用消息或队列 TTL 过期后转入死信交换机,再重新路由到消费队列 无需插件,兼容性好;配置复杂,延迟精度有限 延时消息插件 使用官方延时交换机,消息到期后才进入正常路由流程 使用简单、精度高;需安装插件,存在版本依赖 方案一:死信队列(DLX)+ TTL 实现原理 RabbitMQ 支持为: 消息 设置 TTL(expiration) 队列 设置 TTL(xmessagettl) 当消息到达 TTL 后不会立即删除,而是被投递到死信交换机(Dead Letter Exchange, DLX),再由 DLX 路由到目标队列,从而实现“延迟消费”。
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        最佳实践
        延迟消息
      • 创建用户
        本章节介绍了如何创建分布式消息服务RocketMQ实例的用户。 操作场景 RocketMQ实例支持ACL权限控制功能,通过创建多个用户并为其赋予不同的Topic和消费组权限,以达到用户之间的权限隔离。 前提条件 已购买RocketMQ实例。 步骤一:开启ACL访问控制 1. 登录分布式消息服务RocketMQ控制台。 2. 单击RocketMQ实例的名称,进入实例详情页面。 3. 在“连接信息”区域,单击“ACL访问控制”后的,开启ACL访问控制。 图1 开启ACL访问控制 须知: 仅2021年8月21号后购买的实例,支持设置ACL访问控制。 开启ACL访问控制会导致没有配置认证信息的客户端连接中断。 步骤二:创建用户 1. 在左侧导航栏,单击“用户管理”,进入“用户管理”页面。 2. 单击“创建用户”,弹出“创建用户”对话框。 3. 参考表1,填写用户名称和配置信息。 表1 用户参数说明 参数 说明 名称 自定义用户名称,用于识别不同的用户。 用户名创建成功后,不可修改。 IP白名单 如果请求的来源IP为IP白名单中的地址,不需要校验用户密钥是否正确,且具有所有Topic和消费组的发布+订阅权限。 IP白名单可以配置为具体的IP地址,如:192.168.1.2,192.168.2.3。也可以配置为网段,如192...。 说明 这里网段的写法,需要以192...方式写,暂不支持 192.168.0.0/24的写法。 管理员 开启管理员时,具有所有Topic和消费组的发布+订阅权限。 默认Topic权限 默认的Topic权限。 如果为指定Topic设置特殊权限,特殊权限会覆盖默认权限,此Topic的实际权限为特殊权限。例如:默认权限为订阅,指定Topic的特殊权限为发布+订阅,则此Topic实际权限为发布+订阅。 默认消费组权限 默认的消费组权限。 如果为指定消费组设置特殊权限,特殊权限会覆盖默认权限,此消费组的实际权限为特殊权限。例如:默认权限为订阅,指定消费组的权限为发布+订阅,则此消费组实际权限为发布+订阅。 密钥 设置用户的密钥。 4. 单击“确定”,完成用户的创建。
        来自:
        帮助文档
        分布式消息服务RocketMQ
        用户指南
        用户管理
        创建用户
      • RabbitMQ队列迁移
        本文主要介绍分布式消息服务RabbitMQ的队列迁移最佳实践。 在RabbitMQ集群上,队列在各个节点分布不均衡会导致部分节点压力过大,无法更有效的利用集群。这可能是扩容节点、删除队列等原因导致的。 设置队列负载均衡的方法如下: 删除队列重建 通过Policy修改master节点方式 删除队列重建 1. 登录RabbitMQ WebUI页面。 2. 在“Overview”页签中,单击“Download broker definitions”,导出元数据。 3. 停止生产,等待数据消费完,然后删除原有队列。 在“Overview”页签中,确认数据是否已消费完。 可消费消息数(Ready)和未确认的消息数(Unacked)都为0时,说明消费完成。 等数据消费完后,删除原有队列。 在“Queues”页签,单击需要删除的队列名称,进入队列详情页面。 单机“Delete Queue”,删除队列。 4. 在“Overview”页签中,上传2中导出的元数据。 在“Overview”页签中,单击“选择文件”,选择2中导出的元数据。 单击“Upload broker definitions”,上传元数据。 上传成功后,显示如下信息。 实例会自动将队列均衡创建在各个节点上,在“Queues”页签中查看队列分布详情。
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        最佳实践
        RabbitMQ队列迁移
      • 编辑用户
        本章节介绍了如何编辑分布式消息服务RocketMQ实例的用户。 操作场景 用户创建成功后,您可以根据业务需要修改以下用户信息:IP白名单、管理员、默认Topic权限、默认消费组权限和密钥。 操作步骤 1. 登录分布式消息服务RocketMQ控制台。 2. 单击RocketMQ实例的名称,进入实例详情页面。 3. 在左侧导航栏,单击“用户管理”,进入“用户管理”页面。 4. 在待修改的用户所在行,单击“编辑”,弹出“编辑用户”对话框。 5. 根据业务需要,修改如表1所示信息。 表1 用户参数说明 参数 说明 IP白名单 如果请求的来源IP为IP白名单中的地址,不需要校验用户密钥是否正确,且具有所有Topic和消费组的发布+订阅权限。IP白名单可以配置为具体的IP地址,也可以配置为网段。如:192.168.1.2,192.168.2.3或者192. . . 管理员 开启管理员时,具有所有Topic和消费组的发布+订阅权限。 默认Topic权限 默认的Topic权限。 如果为指定Topic设置特殊权限,特殊权限会覆盖默认权限,此Topic的实际权限为特殊权限。例如:默认权限为订阅,指定Topic的特殊权限为发布+订阅,则此Topic实际权限为发布+订阅。 默认消费组权限 默认的消费组权限。 如果为指定消费组设置特殊权限,特殊权限会覆盖默认权限,此消费组的实际权限为特殊权限。例如:默认权限为订阅,指定消费组的权限为发布+订阅,则此消费组实际权限为发布+订阅。 密钥 设置用户的密钥。 6. 单击“确定”,完成用户的修改。
        来自:
        帮助文档
        分布式消息服务RocketMQ
        用户指南
        用户管理
        编辑用户
      • 消息持久化
        介绍分布式消息服务RabbitMQ消息持久化功能。 使用场景 在生产过程中,难免会发生服务器宕机的事情,RabbitMQ也不例外,可能由于某种特殊情况下的异常而导致RabbitMQ宕机从而重启,那么这个时候对于消息队列里的数据,包括交换机、队列以及队列中存在消息恢复就显得尤为重要了。RabbitMQ本身带有持久化机制,包括交换机、队列以及消息的持久化。持久化的主要机制就是将信息写入磁盘,当RabbtiMQ服务宕机重启后,从磁盘中读取存入的持久化信息,恢复数据。 设置交换器持久化 (1)登录管理控制台。 (2)进入RabbitMQ管理控制台。 (3)在实例列表页在操作列,目标实例行点击“管理”。 (4)点击“交换器管理”后,点击“新建”按钮。 (5)点击“新建”后出现以下窗口,是否持久化选择是。 设置队列持久化 (1)登录管理控制台。 (2)进入RabbitMQ管理控制台。 (3)在实例列表页在操作列,目标实例行点击“管理”。 (4)点击“队列管理”后,点击“新建”按钮。 (5)点击“新建”后出现以下窗口,是否持久化选择是。
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        用户指南
        高级特性
        消息持久化
      • 购买类
        介绍分布式消息服务MQTT购买类问题。 MQTT包周期实例不支持删除吗? 可以删除。登录MQTT控制台,在包周期实例所在行,单击“更多 > 退订”,即可完成实例的删除。 分布式消息服务MQTT资源包可以叠加购买吗? 天翼云分布式消息服务RocketMQ支持叠加购买。 产品订购时可选资源池节点不一致? 已上线资源池节点的剩余容量达到一定比例后,为确保老客户权益,将不再面向新客户开放,产品订购时的可选资源节点范围以实际为准。
        来自:
        帮助文档
        分布式消息服务MQTT
        常见问题
        购买类
      • 标签管理
        标签可以识别资源,您可以将作用相同的分布式消息服务RocketMQ资源通过标签进行归类,便于搜索和资源聚合。本文介绍标签的使用说明以及标签的相关操作。 使用说明 标签都由一对键值对(KeyValue)组成。 资源的任一标签的标签键(Key)必须唯一。 例如,实例先添加了type:order标签,后续如需添加type:pay标签,需先删除type:pay标签。 添加标签 1. 登录分布式消息服务RocketMQ控制台,在左侧导航栏单击实例列表 。 2. 在顶部菜单栏,选择地域,如华东1。 在该地域的所有实例都展示在实例列表页面。 3. 在实例列表页面,找到您想要添加标签的实例,在其标签列,将光标移动至图标,在弹出的消息框中,单击 + 添加 。 4. 在编辑标签面板,按要求输入标签键和标签值 ,然后单击确定 。 根据标签过滤资源 说明 本文介绍如何通过标签过滤实例列表。 1. 在实例列表页面,单击筛选标签 。 2. 分别在标签键和标签值下的列表中选择对应的值,然后单击搜索,列表中将只显示绑定了对应标签的实例。
        来自:
        帮助文档
        分布式消息服务RocketMQ
        用户指南
        实例管理
        标签管理
      • RabbitMQ实例规格
        本文主要介绍分布式消息服务RabbitMQ的实例规格。 RabbitMQ实例规格 RabbitMQ实例兼容开源RabbitMQ 3.8.35,实例类型包括单机和集群,实例规格请参考下表。 说明 为了保证稳定性,服务端限制了单条消息的最大长度为50MB,请勿发送大于此长度的消息。 下表中TPS,是指以2KB大小的消息为例的每秒处理消息条数,测试场景为不开启持久化的非镜像队列,实时生产实时消费,队列无积压。此数据仅供参考,生产使用需要以实际压测性能为准。 服务端的性能主要跟以下因素相关:队列数、消息堆积、连接数、channel、消费者数、镜像队列、优先级队列、消息持久化和exchange类型等,在选择实例规格时,请根据业务模型压测结果选择。 一条连接最多可以开启2047个channel。 表1 RabbitMQ实例规格 型号 代理数 存储空间范围 TPS参考值 单个代理最大消费者数 单个代理建议队列数 单个代理最大连接数 rabbitmq.2u4g.single 1 100GB~30000GB 10000 20000 200 3000 rabbitmq.4u8g.single 1 100GB~30000GB 20000 30000 400 4500 rabbitmq.8u16g.single 1 100GB~30000GB 35000 50000 800 7500 rabbitmq.16u32g.single 1 100GB~30000GB 45000 80000 1600 12000 rabbitmq.24u48g.single 1 100GB~30000GB 50000 100000 2400 15000 rabbitmq.2u4g.cluster 3/5/7 3/5/7100GB~30000GB 30000~70000 20000 200 3000 rabbitmq.4u8g.cluster 3/5/7 3/5/7100GB~30000GB 45000~80000 30000 400 4500 rabbitmq.8u16g.cluster 3/5/7 3/5/7100GB~30000GB 85000~120000 50000 800 7500 rabbitmq.12u24g.cluster 3/5/7 3/5/7100GB~30000GB 100000~150000 60000 1200 10000 rabbitmq.16u32g.cluster 3/5/7 3/5/7100GB~30000GB 130000~180000 80000 1600 12000 rabbitmq.24u48g.cluster 3/5/7 3/5/7100GB~30000GB 150000~200000 100000 2400 15000
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        产品简介
        产品规格
        RabbitMQ实例规格
      • 路由到分布式消息服务RabbitMQ
        结果验证 1. 使用事件源触发一个事件事件。 2. 您可以在分布式消息RabbitMQ 控制台确认是否接收到事件。 1. 登录分布式消息服务RabbitMQ控制台,然后在左侧导航栏选择实例列表。 2. 在实例列表页面单击目标实例名称。 3. 在选择队列管理,进入目标队列详情,进入消息消费拨测页面。 4. 在消息查询页面,点击消费即可查看消息内容, 如图2所示。 图2 在分布式消息服务RabbitMQ管理控制台中查看消息详情
        来自:
        帮助文档
        事件总线
        用户指南
        事件流
        事件目标
        路由到分布式消息服务RabbitMQ
      • 消息问题
        本章节主要介绍消息类问题的解决方法。 RabbitMQ实例支持延时消息队列么? RabbitMQ可以通过设置消息的有效期和死信队列来实现延迟消息。同时,也提供安装插件实现延迟消息。当前RabbitMQ支持的插件:rabbitmqamqp10、rabbitmqdelayedmessageexchange、rabbitmqfederation、rabbitmqsharding、rabbitmqshovel、rabbitmqtracing、rabbitmqmqtt、rabbitmqwebmqtt、rabbitmqstomp、rabbitmqwebstomp和rabbitmqconsistenthashexchange。 消息的最长保留时间是多久? 一般情况下消息如果未被消费会一直保留,只有被消费后,才会被删除。但是如果设置了过期时间(TTL),则以TTL时间为准。 消息创建时间在哪设置? 消息创建时间是由生产客户端在生产消息时设置的。 RabbitMQ生产消息的最大长度是多少? 单条消息的最大长度为50MB,请勿发送大于此长度的消息,否则会导致生产失败。
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        常见问题
        消息问题
      • 分布式消息服务RabbitMQ事件目标
        结果验证 1. 使用事件总线发布消息功能,发送一个自定义事件。 2. 您可以在分布式消息RabbitMQ 控制台确认是否接收到事件,如图2所示。 1. 登录分布式消息服务RabbitMQ控制台,然后在左侧导航栏选择实例列表。 2. 在实例列表页面单击目标实例名称。 3. 在选择队列管理,进入目标队列详情,进入消息消费拨测页面。 4. 在消息查询页面,点击消费即可查看消息内容。 图2 在分布式消息服务RabbitMQ管理控制台中查看消息详情
        来自:
        帮助文档
        事件总线
        用户指南
        事件总线
        事件规则
        事件目标
        目标服务类型
        分布式消息服务RabbitMQ事件目标
      • RabbitMQ实例规格(1)
        本文主要介绍分布式消息服务RabbitMQ的实例规格。 RabbitMQ实例规格 RabbitMQ实例兼容开源RabbitMQ 3.8.35,实例类型包括单机和集群,实例规格请参考下表。 说明 为了保证稳定性,服务端限制了单条消息的最大长度为50MB,请勿发送大于此长度的消息。 下表中TPS,是指以2KB大小的消息为例的每秒处理消息条数,测试场景为不开启持久化的非镜像队列,实时生产实时消费,队列无积压。此数据仅供参考,生产使用需要以实际压测性能为准。 服务端的性能主要跟以下因素相关:队列数、消息堆积、连接数、channel、消费者数、镜像队列、优先级队列、消息持久化和exchange类型等,在选择实例规格时,请根据业务模型压测结果选择。 一条连接最多可以开启2047个channel。 表1 RabbitMQ实例规格 型号 代理数 存储空间范围 TPS参考值 单个代理最大消费者数 单个代理建议队列数 单个代理最大连接数 rabbitmq.2u4g.single 1 100GB~30000GB 10000 20000 200 3000 rabbitmq.4u8g.single 1 100GB~30000GB 20000 30000 400 4500 rabbitmq.8u16g.single 1 100GB~30000GB 35000 50000 800 7500 rabbitmq.16u32g.single 1 100GB~30000GB 45000 80000 1600 12000 rabbitmq.24u48g.single 1 100GB~30000GB 50000 100000 2400 15000 rabbitmq.2u4g.cluster 3/5/7 3/5/7100GB~30000GB 30000~70000 20000 200 3000 rabbitmq.4u8g.cluster 3/5/7 3/5/7100GB~30000GB 45000~80000 30000 400 4500 rabbitmq.8u16g.cluster 3/5/7 3/5/7100GB~30000GB 85000~120000 50000 800 7500 rabbitmq.12u24g.cluster 3/5/7 3/5/7100GB~30000GB 100000~150000 60000 1200 10000 rabbitmq.16u32g.cluster 3/5/7 3/5/7100GB~30000GB 130000~180000 80000 1600 12000 rabbitmq.24u48g.cluster 3/5/7 3/5/7100GB~30000GB 150000~200000 100000 2400 15000
        来自:
      • 自建Apache RocketMQ事件目标
        您可以通过事件规则过滤事件,将事件路由到自建Apache RocketMQ服务。本文以自定义事件为例介绍将事件路由到自建Apache RocketMQ的前提条件、操作步骤和结果验证。 前提条件 开通事件总线EventBridge并委托授权 创建自定义总线服务 操作步骤 1. 登录事件总线EventBridge控制台,在左侧导航栏,单击事件总线。 2. 选择目标总线,在左侧导航栏,单击事件规则,然后单击添加事件规则。 3. 在添加事件规则页面,完成以下操作。 1. 在配置基本信息配置向导,在名称文本框输入规则名称,在描述文本框输入规则的描述,然后单击下一步。 2. 在配置事件模式配置向导,选择匹配全部事件,然后单击下一步。 3. 在配置事件目标 配置向导,配置事件目标,事件目标服务类型选择自建Apache RocketMQ,目标参数描述如下,然后单击创建。 参数说明 参数 说明 示例 接入点 Apache RocketMQ集群broker接入点,由IP与端口号拼接而成,以逗号分隔。 172.17.0.25:9876,192.17.0.26:9876,172.17.0.27:9876 Topic topic名称。 topic1 网络配置 根据业务场景选择对应配置。 专有网络 公网网络 专有网络 VPC 网络配置选择专有网络时必填,选择集群所在的VPC。 vpc 子网 网络配置选择专有网络时必填,选择集群所在的子网。 subnet 认证模式 选择认证模式。 无需配置 ACL 用户名:填写用户名 密码:填写密码 无需配置 消息体 选择消息体(Body)的内容,更多内容请参考事件内容转换。 全部事件 自定义属性 选择自定义属性(Properties)的内容,更多内容请参考事件内容转换。 空 索引 选择索引(Keys)的内容,更多内容请参考事件内容转换。 空 标签 选择标签(Tags)的内容,更多内容请参考事件内容转换。 空
        来自:
        帮助文档
        事件总线
        用户指南
        事件总线
        事件规则
        事件目标
        目标服务类型
        自建Apache RocketMQ事件目标
      • 路由到自建Apache RocketMQ
        本文介绍如何在事件总线EventBridge管理控制台添加Apache RocketMQ作为事件流中的服务类型。 前提条件 开通事件总线EventBridge并委托授权。 创建事件流 1. 登录事件总线EventBridge管理控制台,在左侧导航栏,单击事件流。 2. 在创建事件流面板,设置任务名称和描述,配置以下参数,然后单击创建。 1. 在Source(源) 、Filtering(过滤) 、Transform(转换)配置向导,设置数据提供方、事件过滤、转换规则,单击下一步。 2. 在Sink(目标) 配置向导,选择服务类型Apache RocketMQ,配置以下参数。 3. 创建事件流后,会有30秒~60秒的延迟时间,您可以在事件流 页面的状态 栏查看启动进度。 参数说明 参数 说明 示例 接入点 Apache RocketMQ集群broker接入点,由IP与端口号拼接而成,以逗号分隔。 172.17.0.25:9876,192.17.0.26:9876,172.17.0.27:9876 Topic topic名称。 topic1 网络配置 根据业务场景选择对应配置。 专有网络 公网网络 专有网络 VPC 网络配置选择专有网络时必填,选择集群所在的VPC。 vpc 子网 网络配置选择专有网络时必填,选择集群所在的子网。 subnet 认证模式 选择认证模式。 无需配置 ACL 用户名:填写用户名 密码:填写密码 无需配置 消息体 选择消息体(Body)的内容,更多内容请参考事件内容转换。 全部事件 自定义属性 选择自定义属性(Properties)的内容,更多内容请参考事件内容转换。 空 索引 选择索引(Keys)的内容,更多内容请参考事件内容转换。 空 标签 选择标签(Tags)的内容,更多内容请参考事件内容转换。 空
        来自:
        帮助文档
        事件总线
        用户指南
        事件流
        事件目标
        路由到自建Apache RocketMQ
      • 操作类
        the consumer message buffer is full, so do flow control 客户端日志出现the consumer message buffer is full, so do flow control 问题原因:push客户端消费过慢,本地缓存队列已满,暂时停止向服务端拉取消息。消费慢的原因可能是网络原因、topic队列数过多、消费者过少,内存过小等。 解决方案: (1)查看网络是否异常,缓慢。 (2)增加消费者实例。 (3)如果消息不重要,又不方便增加消费者实例,可以减少topic队列数量。 system busy, start flow control for a while 客户端日志出现 [REJECTREQUEST]system busy, start flow control for a while 或者 [PCBUSYCLEANQUEUE]broker busy, start flow control for a while, period in queue。 问题原因: 在关闭生产者实例的同时用生产者实例发送消息,连接关闭了netty会拒绝请求。 线程少,处理发送请求过慢。 解决方案: 应用优化使用流程,禁止在close生产者实例后使用生产者。 如果Broker是同步主,那么改成异步主,或者将 sendMessageThreadPoolNums32且waitTimeMillsInSendQueue1000。 消费者消费不到消息如何处理 进入控制台查看订阅管理菜单,检查订阅组是否有消费实例在线,如果不在线检查消费客户端日志是否有连接异常。 检查消费客户端逻辑,是否存在订阅关系不一致的情况。 消费者机器宕机重启是否会造成消息丢失 RocketMQ的消息数据以及订阅信息都是持久化保存的,当消费者下线重新上线后,会Broker持久化的下线前的消费偏移重新开始消费,所以不会发生消息丢失的情况。 订阅消息时是否可以允许消息Tag为空 订阅主题时如果Tag设置为空会导致消费者消费不到消息,如不希望通过Tag进行消息过滤,可以将Tag设置为,示例如下: consumer.subscribe(topic, ""); 客户端连接时出现“signature validate by dauth failed”错误 这种错误的原因一般是由于ACL认证失败,较大的可能是客户端配置的AccessKey和SecretKey出现错误,可以检查下这两项配置是否输入有误。
        来自:
        帮助文档
        分布式消息服务RocketMQ
        常见问题
        操作类
      • RabbitMQ消息持久化
        本文主要介绍分布式消息服务RabbitMQ的消息持久化最佳实践。 使用场景 默认情况下,RabbitMQ生产者生产的消息存储在内存中,当节点宕机或重启时,如何确保消息不丢失呢?RabbitMQ通过持久化机制实现,持久化包括Exchange持久化、Queue持久化和Message持久化。持久化是将内存中的消息写入到磁盘中,以防异常情况导致内存中的消息丢失。但是磁盘的读写速度远不如内存,开启消息持久化后,RabbitMQ的性能会下降。与惰性队列不同,持久化消息会在磁盘和内存中各存储一份,只有在内存空间不够时,才会将内存中的消息删除,存储到磁盘中。 说明 非持久化队列、Exchange在重启之后会丢失。 非持久化消息在重启之后会丢失(经过持久化队列/Exchange的消息不会自动变为持久化消息)。 持久化消息在尚未完成持久化时,如果服务器重启,消息会丢失。 设置Exchange持久化 在RabbitMQ的Web界面创建Exchange时,设置“durable”为“true”,如图1所示,设置成功后如图2所示。 图1 设置Exchange持久化 图2 持久化的Exchange
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        最佳实践
        RabbitMQ消息持久化
      • 入门实践
        本文主要介绍分布式消息服务RabbitMQ的入门实践。 当您购买了RabbitMQ实例后,可以根据自身的业务需求使用分布式消息服务RabbitMQ提供的一系列常用实践。 表1 常用最佳实践 实践 描述 RabbitMQ业务迁移 介绍将线下单机或集群实例迁移到天翼云RabbitMQ实例的方案。 RabbitMQ队列迁移 扩容节点、删除队列可能会导致队列在各个节点分布不均衡,本文介绍如何设置队列负载均衡。
        来自:
        帮助文档
        分布式消息服务RabbitMQ
        快速入门
        入门实践
      • 策略语法
        云服务名称 是否支持条件键 云通信短信 否 弹性文件服务 否 分布式消息服务Kafka 否 账务 是 分布式消息服务RabbitMQ 否 分布式消息服务RocketMQ 否 云硬盘 是 天翼云电脑(政企版) 是 内网DNS 否 CRM业务中台 是 分布式缓存服务Redis版 否 弹性云主机 是 弹性负载均衡 否 镜像服务 是 云监控 否 弹性伸缩服务 否 虚拟私有云 是 物理机 否 云硬盘备份 否 云主机备份 否 服务器安全卫士(原生版) 否 密钥管理 否 云间高速 否 统一身份认证 是 客服工单 是 容器云服务引擎CCSE 是 微服务应用平台MSAP 否 活动与券 是 消息管理 是 Web应用防火墙(原生版) 否 云审计 否 企业组织 是 VPC终端节点 否 NAT网关 是
        来自:
        帮助文档
        统一身份认证(一类节点)
        用户指南
        策略管理
        策略语法
      • 产品架构
        本文带您了解分布式消息服务RocketMQ的产品架构。 系统部署架构如下图所示: Nameserver Nameserver是一个几乎无状态节点,每个集群部署3个Nameserver节点,节点之间无同步信息。它主要提供Broker注册、Topic路由管理等功能。 Broker 分布式消息中间件核心组件,提供消息生产、消费,主从同步、数据刷盘等核心功能。可以横向扩展、在线扩容以提高集群性能。每个Broker由一个Master节点(主节点)和一个Slave节点(备节点)组成,与Nameserver集群的所有节点建立长连接,并定时注册Topic等信息。 Producer 生产者,一般为应用调用API进行消息生产。Producer与Nameserver集群中的其中一个节点(随机选择)建立长连接,定期从Nameserver取Topic路由信息,并向提供Topic服务的Master建立长连接,且定时向Master发送心跳。Producer完全无状态,可集群部署。 Consumer 消费者,一般为应用调用API进行消息消费。Consumer与Producer一样,与一个Nameserver建立长连接并取Topic路由信息。Consumer与提供Topic服务的Master建立长连接,进行消息消费。
        来自:
        帮助文档
        分布式消息服务RocketMQ
        产品简介
        产品架构
      • 开启消息轨迹
        本章节介绍了如何开启分布式消息服务RocketMQ实例的消息轨迹功能。 操作场景 查询消息轨迹前,需要先在客户端开启消息轨迹。 本章节介绍使用Java和Go开启消息轨迹的方法。 操作步骤(Java) 在客户端开启消息轨迹的方法如下: 生产者开启消息轨迹(除事务消息以外的消息 类型 ) 构造函数的“enableMsgTrace”参数传入“true”,例如: DefaultMQProducer producer new DefaultMQProducer("ProducerGroupName", true); 生产者开启消息轨迹( 事务消息 ) 构造函数的“enableMsgTrace”参数传入“true”,例如: TransactionMQProducer producer new TransactionMQProducer(null,"ProducerGroupName", null, true, null); 须知: 生产者客户端版本在4.9.0以上才支持事务消息的轨迹,如果版本不满足要求,请先升级。 消费者开启消息轨迹 构造函数的“enableMsgTrace”参数传入“true”,例如: DefaultMQPushConsumer consumer new DefaultMQPushConsumer("ConsumerGroupName",true); 操作步骤(Go ) 在客户端开启消息轨迹的方法如下: 1. 执行以下命令,检查是否已安装Go。 go version 返回如下回显时,说明Go已经安装。 [root@ecstest sarama] go version goversion go1.16.5 linux/amd64 如果未安装Go,请下载并安装。 2. 在“go.mod”中增加以下代码,添加依赖。 3. 生产者开启消息轨迹(以下加粗内容需要替换为实例自有信息,请根据实际情况替换)。 4. 消费者开启消息轨迹(以下加粗内容需要替换为实例自有信息,请根据实际情况替换)。
        来自:
        帮助文档
        分布式消息服务RocketMQ
        用户指南
        消息查询
        开启消息轨迹
      • 【优惠】正式开放2年7折,3年5折包年折扣
        面向长期稳定客户,我们特别推出了更加优惠的包年订阅选项,旨在通过深度折扣,帮助客户显著降低资源单位成本,优化整体支出。 自2024年11月9日起订购和续订分布式消息服务RocketMQ产品更长包周期即可享受2年7折,3年5折优惠。 注意 本次包年优惠适用于新资费产品范围,具体支持资源池请参阅
        来自:
        帮助文档
        分布式消息服务RocketMQ
        服务公告
        2024年
        【优惠】正式开放2年7折,3年5折包年折扣
      • 1
      • ...
      • 4
      • 5
      • 6
      • 7
      • 8
      • ...
      • 238
      跳转至
      推荐热词
      天翼云运维管理审计系统天翼云云服务平台云服务备份云日志服务应用运维管理云手机云电脑天翼云云hbase数据库电信云大数据saas服务电信云大数据paas服务轻量型云主机天翼云客户服务电话应用编排服务天翼云云安全解决方案云服务总线CSB天翼云服务器配置天翼云联邦学习产品天翼云云安全天翼云企业上云解决方案天翼云产品天翼云视频云存储

      天翼云最新活动

      安全隔离版OpenClaw

      OpenClaw云服务器专属“龙虾“套餐低至1.5折起

      青云志云端助力计划

      一站式科研助手,海外资源安全访问平台,助力青年翼展宏图,平步青云

      云上钜惠

      爆款云主机全场特惠,2核4G只要1.8折起!

      中小企业服务商合作专区

      国家云助力中小企业腾飞,高额上云补贴重磅上线

      出海产品促销专区

      爆款云主机低至2折,高性价比,不限新老速来抢购!

      天翼云奖励推广计划

      加入成为云推官,推荐新用户注册下单得现金奖励

      产品推荐

      弹性云主机 ECS

      镜像服务 IMS

      轻量型云主机

      弹性伸缩服务 AS

      弹性高性能计算 E-HPC

      训推服务

      公共算力服务

      一站式智算服务平台

      人脸检测

      推荐文档

      如何修改账号的密码?

      变更备案

      mstsc 远程登录报错-要求的函数不受支持

      文档下载

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 天翼云国际站
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2026 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号