检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
在分布式消息服务RocketMQ版中,消费者消费消息时,可能会出现消费过快导致下游业务来不及处理的情况,进而影响系统的稳定性。本章节介绍在消费端进行限流的示例代码,以保障系统的稳定。 准备环境 开源的Java客户端支持连接分布式消息服务RocketMQ版,推荐使用的客户端版本为4.9.8。
组策略。每个RocketMQ实例都部署在某个VPC中,并绑定具体的子网和安全组,通过这样的方式为RocketMQ提供一个隔离的、用户自主配置和管理的虚拟网络环境以及安全保护策略,提升实例的安全性。 RocketMQ实例所需资源的具体要求和创建指导如表1所示。 表1 RocketMQ实例依赖资源
从控制台获取项目ID 在调用接口的时候,部分URL中需要填入项目ID(project_id),所以需要先在管理控制台上获取到项目ID。 项目ID获取步骤如下: 登录管理控制台。 鼠标悬停在右上角的用户名,选择下拉列表中的“我的凭证”。 在“API凭证”页面的项目列表中查看项目ID。 图1 查看项目ID
c和消费组生产消息、消费消息的记录。当您需要使用相同的Topic和消费组时,可通过元数据迁移操作将已有的Topic和消费组信息迁移到指定的RocketMQ实例中,无需再手动创建。 RocketMQ业务迁移主要涉及以下场景: 迁移其他RocketMQ的元数据到华为云上RocketM
助您安全的控制华为云资源的访问。 通过IAM,您可以在华为账号中给员工创建IAM用户,并授权控制他们对华为云资源的访问范围。例如您的员工中有负责软件开发的人员,您希望他们拥有DMS for RocketMQ的使用权限,但是不希望他们拥有删除RocketMQ实例等高危操作的权限,那
吐、动态扩展、便捷多样的消息中间件服务。用户购买RocketMQ实例后,生产者客户端连接RocketMQ实例进行消息生产,生产的消息被存储在RocketMQ实例的Topic中,消费者客户端通过订阅Topic消费消息。 使用RocketMQ实例生产消费消息的流程如下图所示。 图1 RocketMQ业务使用流程
验证RocketMQ消息消费 消费验证是将消息重新发送到指定的在线客户端,验证消费者能否收到消息。消费验证会导致消息重复消费。 前提条件 仅在实例的“状态”为“运行中”时,才可以进行消费验证。 确保待进行消费验证的客户端处于在线状态,且消费者已订阅待重新发送的消息所属的Topic。 验证RocketMQ消息消费
消息内容:生产消息的内容。输入长度不能超过2000个字符。 (可选)消息Key:消息键。输入长度不能超过128个字符。若key包含空格,则被视为多个key,在消息查询中无法以Message Key的方式准确查询出消息。 (可选)消息Tag:消息标签,用来进一步区分某个Topic下的消息分类
Linux系统的命令行模式下,调用TCP协议连接已开启SSL的RocketMQ实例。 创建实例时或者在实例基本信息中,将“SSL”配置为“SSL”或“PERMISSIVE”(通过密文传输),即为已开启SSL。 操作视频 本视频演示使用客户端连接RocketMQ实例的操作。 前提条件
”页签的资源设置到期转按需的操作。 设置包年/包月资源到期后转按需。 单个资源到期转按需:选择需要更改计费模式的RocketMQ实例,单击操作列“更多 > 到期转按需”。 图1 单个资源转按需 批量资源到期转按需:选择需要更改计费模式的RocketMQ实例,单击列表左上角的“到期转按需”。
单击RocketMQ实例的名称,进入实例详情页面。 在左侧导航栏,选择“实例诊断”,进入实例诊断页面。 选择以下任意一种方法删除诊断记录。 在待删除的诊断记录所在行,单击“删除”。 如需批量删除诊断记录,勾选待删除的诊断记录,单击“批量删除”。 弹出确认删除对话框,单击“是”,完成诊断记录的删除。
配置消息堆积数监控 方案概述 在消息处理过程中,如果客户端的消费速度跟不上服务端的发送速度,未处理的消息会越来越多,这部分消息就被称为堆积消息。消息没有被及时消费就会产生消息堆积,从而会造成消息消费延迟。 如果您想要在消费组的消息堆积数超过阈值时,通过短信/邮件及时收到通知信息,
查看RocketMQ消费者连接地址 消费者连接地址即消费消息的客户端地址,当客户端连接RocketMQ消费消息时,可通过控制台查看客户端的连接地址。 消费者处于连接RocketMQ实例时,才可以查看消费者连接地址。 前提条件 已创建消费组,且消费组中已存在消费者。 已创建Topic。 查看RocketMQ消费者连接地址
在一条消息从生产者发出到消费者消费处理过程中,由各个相关节点的时间、地点等数据汇聚而成的完整链路信息。通过消息轨迹,您能清晰定位消息从生产者发出,经由RocketMQ服务端,投递给消费者的完整链路,方便定位排查问题。 本章节介绍使用Java、Go和Spring开启消息轨迹,以及查看消息轨迹的方法。 前提条件
图1 正确的订阅关系一致设置 订阅关系一致性保证了同一个消费组中消费消息的正常运行,避免消息逻辑混乱和消息丢失。在实际使用中,生产者端要做好消息的分类,便于消费者可以使用Tag进行消息的准确订阅。而在消费者端,则要保证订阅关系的一致性。 错误的订阅关系 同一消费组下的消费者订阅了不同的Topic
etMQ实例。 配置RocketMQ实例的公网访问 内网连接 客户端和RocketMQ实例部署在同一个VPC中,此时网络默认互通。 - 客户端和RocketMQ实例部署在同一个Region的不同VPC中,利用VPC对等连接将两个VPC间的网络打通,实现跨VPC访问。 对等连接 客
此实例会存入回收站中,此时不会收取实例的费用,但是会按需收取存储空间的费用。如果想要停止计费,请在回收站中删除实例。 通过账单查找云服务资源并停止计费 为了确保所有计费资源都能够被找到并删除,您可以在费用账单中获取计费资源的ID,通过这些ID信息找到具体的资源,然后将其一一删除。具体操作如下:
tMQ实例状态进入运行中之前的状态。 运行中 RocketMQ实例正常运行状态。 在这个状态的实例可以运行您的业务。 故障 RocketMQ实例处于故障状态。 启动中 实例从已冻结到运行中的中间状态。 重启中 RocketMQ实例正在进行重启操作。 变更中 RocketMQ实例正在进行公网访问变更或规格变更操作。
扩容存储空间。 在“变更类型”中,选择“存储空间”,在“单个代理存储空间”中,选择扩容后的单个代理的存储空间大小,单击“下一步”。确认扩容信息无误后,单击“提交”。 在实例列表页面的“可用存储空间”中查看扩容后的总存储空间大小(即扩容后的单个代理的存储空间*代理个数)。 扩容存储空间不会影响业务。
对消费RocketMQ实例消息的影响 RocketMQ消息落盘使用的是顺序写,在新的消息生产到消息队列上时,会先将消息保存在内存中。如果消费者在启动消费时从最新的消息开始消费,则会直接从内存中获取消息进行消费。 当消费者不是从最新的消息开始消费时,RocketMQ需要从磁盘中读取历史消息保存到