- 事务消息是 RocketMQ 的高级特性之一 。这篇文章,笔者会从应用场景、功能原理、实战例子三个模块慢慢为你揭开事务消息的神秘面纱。 1 应用场景举一个电商场景的例子:用户购物车结算时,系统会创建支付订单。用户支付成功后支付订单的状态会由未支付修改为支付成功,然后系统给用户增加积分。通常我们会使用普通消费方案,该方案能够发挥 MQ 的优势:异步和解耦 , 同时架构设计非常简单。用户购物车... 事务消息是 RocketMQ 的高级特性之一 。这篇文章,笔者会从应用场景、功能原理、实战例子三个模块慢慢为你揭开事务消息的神秘面纱。 1 应用场景举一个电商场景的例子:用户购物车结算时,系统会创建支付订单。用户支付成功后支付订单的状态会由未支付修改为支付成功,然后系统给用户增加积分。通常我们会使用普通消费方案,该方案能够发挥 MQ 的优势:异步和解耦 , 同时架构设计非常简单。用户购物车...
- 华为云分布式消息服务DMS是一款消息队列服务,适用于解决分布式架构中的系统解耦、跨系统跨地域数据流通、分布式事务协调等难题。 华为云分布式消息服务DMS是一款消息队列服务,适用于解决分布式架构中的系统解耦、跨系统跨地域数据流通、分布式事务协调等难题。
- 目前华为云官方文档还没有关于rocketmq对接php语言的最佳实践指导,经过调查与自测试,记录对接的过程 目前华为云官方文档还没有关于rocketmq对接php语言的最佳实践指导,经过调查与自测试,记录对接的过程
- 很多同学都在使用 RocketMQ 时,经常会遇到消息堆积的问题。这篇文章,我们聊聊消息堆积的概念,以及如何应对消息堆积。 1 基础概念消费者在消费的过程中,消费的速度跟不上服务端的发送速度,未处理的消息会越来越多,消息出现堆积进而会造成消息消费延迟。虽然笔者经常讲:RocketMQ 、Kafka 具备堆积的能力,但是以下场景需要重点关注消息堆积和延迟的问题:业务系统上下游能力不匹配造成的持... 很多同学都在使用 RocketMQ 时,经常会遇到消息堆积的问题。这篇文章,我们聊聊消息堆积的概念,以及如何应对消息堆积。 1 基础概念消费者在消费的过程中,消费的速度跟不上服务端的发送速度,未处理的消息会越来越多,消息出现堆积进而会造成消息消费延迟。虽然笔者经常讲:RocketMQ 、Kafka 具备堆积的能力,但是以下场景需要重点关注消息堆积和延迟的问题:业务系统上下游能力不匹配造成的持...
- 提到主从复制,我们可能立马会联想到 MySQL 的主从复制。MySQL 主从复制是 MySQL 高可用机制之一,数据可以从数据库服务器主节点复制到一个或多个从节点。这篇文章,我们聊聊 RocketMQ 的主从复制,希望你读完之后,能够理解主从复制的精髓。 1 同步与异步在 RocketMQ 的集群模式中,Broker 分为 Master 与 Slave,一个 Master 可以对应多个 Sl... 提到主从复制,我们可能立马会联想到 MySQL 的主从复制。MySQL 主从复制是 MySQL 高可用机制之一,数据可以从数据库服务器主节点复制到一个或多个从节点。这篇文章,我们聊聊 RocketMQ 的主从复制,希望你读完之后,能够理解主从复制的精髓。 1 同步与异步在 RocketMQ 的集群模式中,Broker 分为 Master 与 Slave,一个 Master 可以对应多个 Sl...
- RocketMQ 支持两种消息模式:集群消费( Clustering )和广播消费( Broadcasting )。集群消费:同一 Topic 下的一条消息只会被同一消费组中的一个消费者消费。也就是说,消息被负载均衡到了同一个消费组的多个消费者实例上。广播消费:当使用广播消费模式时,每条消息推送给集群内所有的消费者,保证消息至少被每个消费者消费一次。我们重点讲解下集群消费的消费流程 ,因为集... RocketMQ 支持两种消息模式:集群消费( Clustering )和广播消费( Broadcasting )。集群消费:同一 Topic 下的一条消息只会被同一消费组中的一个消费者消费。也就是说,消息被负载均衡到了同一个消费组的多个消费者实例上。广播消费:当使用广播消费模式时,每条消息推送给集群内所有的消费者,保证消息至少被每个消费者消费一次。我们重点讲解下集群消费的消费流程 ,因为集...
- RocketMQ 是大家耳熟能详的消息队列,开源项目 rocketmq-spring 可以帮助开发者在 Spring Boot 项目中快速整合 RocketMQ。 这篇文章会介绍 Spring Boot 项目使用 rocketmq-spring SDK 实现消息收发的操作流程**,同时笔者会从开发者的角度解读 SDK 的设计逻辑。 RocketMQ 是大家耳熟能详的消息队列,开源项目 rocketmq-spring 可以帮助开发者在 Spring Boot 项目中快速整合 RocketMQ。 这篇文章会介绍 Spring Boot 项目使用 rocketmq-spring SDK 实现消息收发的操作流程**,同时笔者会从开发者的角度解读 SDK 的设计逻辑。
- 大家好,我是勇哥 。1024 , 程序员节,圆了我一个小小的梦。花了半年时间,我写了一本电子书 ,书名是:《RocketMQ4.X设计精要》,我想在今天分享给各位。这本书一共包含十五章,接近 10 万字,180 张图,按照 RocketMQ 的知识体系一章一章展开。很多年前,一位七牛的资深架构师曾经说过这样一句话:Nginx+ 业务逻辑层 + 数据库 + 缓存层 + 消息队列 ,这种模型几乎... 大家好,我是勇哥 。1024 , 程序员节,圆了我一个小小的梦。花了半年时间,我写了一本电子书 ,书名是:《RocketMQ4.X设计精要》,我想在今天分享给各位。这本书一共包含十五章,接近 10 万字,180 张图,按照 RocketMQ 的知识体系一章一章展开。很多年前,一位七牛的资深架构师曾经说过这样一句话:Nginx+ 业务逻辑层 + 数据库 + 缓存层 + 消息队列 ,这种模型几乎...
- 首先确保安装了docker & docker-compose(建议参考官方文档:https://docs.docker.com/engine/ ,https://docs.docker.com/compose/install/)然后准备composer.yml文件(启动命令:docker-compose up -d)version: "3.0"services: namesrv: ... 首先确保安装了docker & docker-compose(建议参考官方文档:https://docs.docker.com/engine/ ,https://docs.docker.com/compose/install/)然后准备composer.yml文件(启动命令:docker-compose up -d)version: "3.0"services: namesrv: ...
- RocketMQ(四):消费前如何拉取消息?(长轮询机制)上篇文章从Broker接收消息开始,到消息持久化到各种文件结束,分析完消息在Broker持久化的流程与原理消费者消费消息前需要先从Broker进行获取消息,然后再进行消费为了流程的完整性,本篇文章就先来分析下消费者是如何获取消息的,文章内容导图如下: 获取消息的方式消费者并不是每次要消费一条数据就向Broker获取一条数据的,这样R... RocketMQ(四):消费前如何拉取消息?(长轮询机制)上篇文章从Broker接收消息开始,到消息持久化到各种文件结束,分析完消息在Broker持久化的流程与原理消费者消费消息前需要先从Broker进行获取消息,然后再进行消费为了流程的完整性,本篇文章就先来分析下消费者是如何获取消息的,文章内容导图如下: 获取消息的方式消费者并不是每次要消费一条数据就向Broker获取一条数据的,这样R...
- RocketMQ(三):面对高并发请求,如何高效持久化消息?上篇文章我们分析完RocketMQ发送消息的原理,得到结果客户端会通过RPC组件向Broker进行通信Broker收到请求后需要将消息进行持久化,一旦涉及到持久化,服务器的性能会急速降低,并且消费者进行消费时还需要读取消息,从磁盘的读取也是会大大降低性能的本篇文章就要来分析,RocketMQ的Broker在这种频繁读写的场景,是如... RocketMQ(三):面对高并发请求,如何高效持久化消息?上篇文章我们分析完RocketMQ发送消息的原理,得到结果客户端会通过RPC组件向Broker进行通信Broker收到请求后需要将消息进行持久化,一旦涉及到持久化,服务器的性能会急速降低,并且消费者进行消费时还需要读取消息,从磁盘的读取也是会大大降低性能的本篇文章就要来分析,RocketMQ的Broker在这种频繁读写的场景,是如...
- RocketMQ(二):揭秘发送消息核心原理(源码与设计思想解析)上篇文章主要介绍消息中间件并以RocketMQ架构展开描述其核心组件以及MQ运行流程本篇文章以Product的视角来看看发送消息的核心原理与设计思想,最后以图文并茂的方式描述出发送消息的核心流程 消息发送方式RocketMQ中普通消息提供三种发送方式:同步、异步、单向上篇文章中我们已经使用封装好的API延时过同步发送在使用三... RocketMQ(二):揭秘发送消息核心原理(源码与设计思想解析)上篇文章主要介绍消息中间件并以RocketMQ架构展开描述其核心组件以及MQ运行流程本篇文章以Product的视角来看看发送消息的核心原理与设计思想,最后以图文并茂的方式描述出发送消息的核心流程 消息发送方式RocketMQ中普通消息提供三种发送方式:同步、异步、单向上篇文章中我们已经使用封装好的API延时过同步发送在使用三...
- RocketMQ(一):消息中间件缘起,一览整体架构及核心组件消息队列MessageQueue,简称MQ在队列的基础上,加入生产者与消费者模型,使用队列作为载体就能够组成简单的消息队列,在队列中“运输”的数据被称为消息消息队列可以在单节点内存中使用,也可以作为分布式存储的中间件来使用由于项目的架构组织,目前常接触的消息队列往往是作为分布式存储的消息中间件来使用,比如:RabbitMQ、Ro... RocketMQ(一):消息中间件缘起,一览整体架构及核心组件消息队列MessageQueue,简称MQ在队列的基础上,加入生产者与消费者模型,使用队列作为载体就能够组成简单的消息队列,在队列中“运输”的数据被称为消息消息队列可以在单节点内存中使用,也可以作为分布式存储的中间件来使用由于项目的架构组织,目前常接触的消息队列往往是作为分布式存储的消息中间件来使用,比如:RabbitMQ、Ro...
推荐直播
-
华为云ModelArts+Dify AI:双剑合璧使能AI应用敏捷开发
2024/10/14 周一 16:30-18:00
JePhybyte 华为云AI DTSE技术布道师
想知道如何快速部署大模型并进行AI应用敏捷开发吗?华为云ModelArts+开源Dify平台了解一下?本期直播将聚焦华为云ModelArts模型开发平台,并通过Dify平台实现模型调用和AI应用开发。用户无需懂代码,分钟级即可完成模型在线训练、微调、推理、部署上线,并可以通过Dify开源平台实现场景应用快速搭建、测试与落地应用。AI开发效率提升2-3倍,加速推动企业数智化建设,辅助经营发展。
去报名 -
华为云开发者日武汉站
2024/10/16 周三 14:00-16:30
华为云专家团
“华为云开发者日”活动将落地武汉。邀请每个心怀梦想、创造未来的开发者,莅临现场活动交流,享受技术盛宴,共话新未来! 让每个开发者拥有一台云主机。
去报名
热门标签