检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
户收到多次扣款请求,导致重复扣款。但实际上扣款业务只应进行一次,商家也只应产生一条订单流水。这时候使用消息幂等就可以避免这个问题。 在实际应用中,导致消息重复的原因有网络闪断、客户端故障等,且可能发生在消息生产阶段,也可能发生在消息消费阶段。因此,可以将消息重复的场景分为以下两类:
制台为RocketMQ实例续费,以延长RocketMQ实例的使用时间。 在云服务控制台续费 登录管理控制台。 单击左侧导航栏的图标,选择“应用中间件 > 分布式消息服务RocketMQ版”。 通过以下任意一种方法,为RocketMQ实例续费。 勾选RocketMQ实例名称左侧的方
添加和删除标签 登录管理控制台。 在管理控制台左上角单击,选择区域。 请选择RocketMQ实例所在的区域。 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务RocketMQ版”,进入分布式消息服务RocketMQ专享版页面。 在实例所在行,单击实例名称,进入实例详情页面。
者可以根据Tag实现对不同Topic的不同消费逻辑,实现更好的扩展性。 Topic是消息的一级分类,Tag是消息的二级分类,关系如下图。 应用场景 在实际业务中,通过合理使用Topic和Tag,可以使业务结构更清晰,提高效率。可以根据如下几方面判断Topic和Tag的具体使用场景:
进入“费用中心 > 流水和明细账单”页面。 选择“明细账单”,在如下图所示位置单击鼠标左键,复制资源ID。 图1 复制资源ID 登录管理控制台,选择“应用中间件 > 分布式消息服务RocketMQ版”,进入分布式消息服务RocketMQ专享版页面。 选择资源所在的区域,在搜索框中输入2中复制
账号、用户和密码等信息。 区域:指云资源所在的物理位置,同一区域内可用区间内网互通,不同区域间内网不互通。通过在不同地区创建云资源,可以将应用程序设计的更接近特定客户的要求,或满足不同地区的法律或其他要求。 可用区:一个可用区是一个或多个物理数据中心的集合,有独立的风火水电,AZ
弹性云服务器(Elastic Cloud Server) 弹性云服务器是由CPU、内存、操作系统、云硬盘组成的基础的计算组件。RocketMQ实例运行在弹性云服务器上,一个代理对应三台弹性云服务器。 云硬盘(Elastic Volume Service) 云硬盘为云服务器提供块存储
查询消息内容 登录管理控制台。 在管理控制台左上角单击,选择区域。 请选择RocketMQ实例所在的区域。 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务RocketMQ版”,进入分布式消息服务RocketMQ专享版页面。 单击RocketMQ实例的名称,进入实例详情页面。
创建Topic 登录管理控制台。 在管理控制台左上角单击,选择区域。 请选择RocketMQ实例所在的区域。 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务RocketMQ版”,进入分布式消息服务RocketMQ专享版页面。 单击RocketMQ实例的名称,进入实例详情页面。
在控制台迁移元数据 登录管理控制台。 在管理控制台左上角单击,选择区域。 请选择RocketMQ实例所在的区域。 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务RocketMQ版”,进入分布式消息服务RocketMQ专享版页面。 单击RocketMQ实例的名称,进入实例详情页面。
变更实例规格 登录管理控制台。 在管理控制台左上角单击,选择区域。 请选择RocketMQ实例所在的区域。 在管理控制台左上角单击,选择“应用中间件 > 分布式消息服务RocketMQ版”,进入分布式消息服务RocketMQ专享版页面。 通过以下任意一种方法,变更实例规格。 在待变更规格的实例所在行,单击“更多
外线程切换耗时忽略不计,I/O操作不消耗CPU,线程需有足够消息等待处理且内存充足。 此处最大线程数的计算模型是在理想环境下得到的,在实际应用中建议逐步调大线程数,在观察效果后再进行调整。 实施方法 为了避免在实际业务中出现非预期的消息堆积问题,需要在业务系统的设计阶段梳理业务逻辑的消费耗时和设置消费并发度。
通过内网访问元数据节点的端口 创建安全组后,系统默认添加入方向“允许安全组内的弹性云服务器彼此通信”规则和出方向“放通全部流量”规则,此时使用内网通过同一个VPC访问RocketMQ实例,无需添加表1的规则。 创建弹性云服务器(Elastic Cloud Server,以下简称ECS)并配置环境。
MQ网络要求页面。 已配置安全组。 已创建Topic。 客户端所在服务器已安装Java Development Kit 1.8.111或以上版本,并完成环境变量配置。 命令行模式连接实例 登录客户端所在服务器。 下载“rocketmq-tutorial”示例软件包。 wget https://dms-demos
MQ网络要求页面。 已配置安全组。 已创建Topic。 客户端所在服务器已安装Java Development Kit 1.8.111或以上版本,并完成环境变量配置。 命令行模式连接实例 登录客户端所在服务器。 下载“rocketmq-tutorial”示例软件包。 wget https://dms-demos
.setTopics(topic) // 事务消息需要生产者构建一个事务检查器,用于检查确认异常半事务的中间状态。 .setTransactionChecker(checker)
ctions.singletonMap(topic, filterExpression)) // 设置监听器,用于处理接收到的消息,并返回消费结果。 .setMessageListener(messageView ->