RocketMq笔记(动力节点)一、RocketMQ基本操作

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

1. RocketMQ简介

MQ====Message Queue
官网: http://rocketmq.apache.org/

RocketMQ是阿里巴巴2016年MQ中间件,使用Java语言开发,RocketMQ 是一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。同时,广泛应用于多个领域,包括异步通信解耦、企业解决方案、金融支付、电信、电子商务、快递物流、广告营销、社交、即时通信、移动应用、手游、视频、物联网、车联网等。
具有以下特点:
1.  能够保证严格的消息顺序
2.  提供丰富的消息拉取模式
3.  高效的订阅者水平扩展能力
4.  实时的消息订阅机制
5.  亿级消息堆积能力

2. 为什么要使用MQ

1,要做到系统解耦,当新的模块进来时,可以做到代码改动最小;  能够解耦
2,设置流程缓冲池,可以让后端系统按自身吞吐能力进行消费,不被冲垮; 能够削峰,限流
3,强弱依赖梳理能把非关键调用链路的操作异步化并提升整体系统的吞吐能力;能够异步
** **
Mq的作用  削峰限流 异步 解耦合
** **

2.1 定义

中间件(缓存中间件  redis memcache  数据库中间件 mycat  canal   消息中间件mq )
面向消息的中间件(message-oriented middleware) MOM能够很好的解决以上的问题。
是指利用高效可靠的消息传递机制进行与平台无关(跨平台)的数据交流,并基于数据通信来进行分布式系统的集成。
通过提供消息传递和消息排队模型在分布式环境下提供应用解耦,弹性伸缩,冗余存储,流量削峰,异步通信,数据同步等
 
大致流程
发送者把消息发给消息服务器[MQ],消息服务器把消息存放在若干队列/主题中,在合适的时候,消息服务器会把消息转发给接受者。在这个过程中,发送和接受是异步的,也就是发送无需等待,发送者和接受者的生命周期也没有必然关系在发布pub/订阅sub模式下,也可以完成一对多的通信,可以让一个消息有多个接受者[微信订阅号就是这样的]

2.2 特点

2.2.1 异步处理模式

消息发送者可以发送一个消息而无需等待响应。消息发送者把消息发送到一条虚拟的通道(主题或队列)上;
消息接收者则订阅或监听该通道。一条信息可能最终转发给一个或多个消息接收者,这些接收者都无需对消息发送者做出回应。整个过程都是异步的。
案例:
也就是说,一个系统和另一个系统间进行通信的时候,假如系统A希望发送一个消息给系统B,让它去处理,但是系统A不关注系统B到底怎么处理或者有没有处理好,所以系统A把消息发送给MQ,然后就不管这条消息的“死活” 了,接着系统B从MQ里面消费出来处理即可。至于怎么处理,是否处理完毕,什么时候处理,都是系统B的事,与系统A无关。

这样的一种通信方式,就是所谓的“异步”通信方式,对于系统A来说,只要把消息发给MQ,然后系统B就会异步处去进行处理了,系统A不能“同步”的等待系统B处理完。这样的好处是什么呢?解耦

2.2.2 应用系统的解耦

发送者和接收者不必了解对方,只需要确认消息
  发送者和接收者不必同时在线

2.2.3 现实中的业务

RocketMQ笔记(尚硅谷教程) 1.MQ简述 MQ,Message Queue,是种提供消息队列服务的中间件,也称为消息中间件,是套提供了消费、存储、消费全过程API的软件系统,消息即数据,般消息的体量不会很大。 2.MQ的用途 2.1 限流削峰 MQ可以京系统的超量请求暂存其中,以便系统后期可以慢慢进行处理,从而避免了请求的丢失或系统被压垮 2.2 异步解耦 上游系统对下游系统的调用若为同步调用,则会大大降低系统的吞吐量与并发量,且系统耦合度太高,而异步调用则会解决这些问题,随意两层之间若要实现由同步到异步的转化,般的做法就是 阅读详情

相关推荐

RocketMQ-核心篇(2)-核心概念

文章目录、消息模型(Message Model)二、消息生产者(Producer)三、消息消费者(Consumer)四、主题(Topic)五、代理服务器(Broker Server)六、名字服务(Name Server)七、拉取式消费(Pull Consumer)八、推动式消费(Push Consumer)九、生产者组(Producer Group)十、消费者组(Consumer Group)十、集群消费(Clustering)十二、广播消费(Broadcasting)十三、普通顺序消息(Normal

TianXinCoord的博客 1万+

RocketMq

RocketMQ 是什么 Github 上关于 RocketMQ 的介绍: RcoketMQ 是款低延迟、高可靠、可伸缩、易于使用的消息中间件。具有以下特性: 支持发布/订阅(Pub/Sub)和点对点(P2P)消息模型 在个队列中可靠的先进先出(FIFO)和严格的顺序传递 支持拉(pull)和推(push)两种消息模式 单队列百万消息的堆积能力 支持多种消息协议,如 JMS、MQTT 等 分布式高可用的部署架构,满足至少次消息传递语义 提供 docker 镜像用于隔离测试和云集群部署

weixin_45105259的博客 2172

动力节点RocketMQ笔记第三章RocketMQ集成SpringBoot

** * 创建个简单消息的监听 * 1.类上添加注解@Component和@RocketMQMessageListener * * @RocketMQMessageListener(topic = “powernode”, consumerGroup = “powernode-group”) * topic指定消费的主题,consumerGroup指定消费组,个主题可以有多个消费者组,个消息可以被多个不同的组的消费者都消费 * 2.实现RocketMQListener接口,注意泛型的使用 */

Java___interview的博客 823

RocketMQ学习笔记

RocketMQ主要由 Producer、Broker、Consumer 三部分组成,其中Producer 负责生产消息,Consumer 负责消费消息,Broker 负责存储消息。Broker 在实际部署过程中对应台服务器,每个 Broker 可以存储多个Topic的消息,每个Topic的消息也可以分片存储于不同的 Broker。Message Queue 用于存储消息的物理地址,每个Topic中的消息地址存储于多个 Message Queue 中。............

LiangPing_005的博客 630

动力节点最新RocketMq笔记RocketMQ基本操作

中间件(缓存中间件 redis memcache 数据库中间件 mycat canal 消息中间件mq )面向消息的中间件(message-oriented middleware) MOM能够很好的解决以上的问题。是指利用高效可靠的消息传递机制进行与平台无关(跨平台)的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型在分布式环境下提供应用解耦,弹性伸缩,冗余存储,流量削峰,异步通信,数据同步等大致流程。

f5465245的博客 3101

RocketMqRocketMQ基本操作

中间件(缓存中间件 redis memcache 数据库中间件 mycat canal 消息中间件mq )面向消息的中间件(message-oriented middleware) MOM能够很好的解决以上的问题。是指利用高效可靠的消息传递机制进行与平台无关(跨平台)的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型在分布式环境下提供应用解耦,弹性伸缩,冗余存储,流量削峰,异步通信,数据同步等大致流程。

Javanewspaper的博客 1007

动力节点RocketMQ笔记二、RocketMQ与重复消费

RocketMQ提供了发送多种发送消息的模式,例如同步消息,异步消息,顺序消息,延迟消息,事务消息等,我们学习。

Javanewspaper的博客 937

动力节点RocketMQ笔记第三章RocketMQ集成SpringBoot

和对象消息同理,创建个Order的集合,发送出去,监听方注意修改泛型中的类型为Object即可,这里就不做重复演示了。这种方式主要用在不关心发送结果的场景,这种方式吞吐量很大,但是存在消息丢失的风险,例如日志信息的发送。/** * 发送个带tag的消息 * * @throws Exception */这种可靠性同步地发送方式使用的比较广泛,比如:重要的消息通知,短信通知等。这三种发送消息的方法,底层都是调用syncSend,发送的是同步消息。我们在上面的快速入门中演示的消息,就是同步消息,即。

f5465245的博客 828

RocketMQ视频笔记第三章RocketMQ集成SpringBoot(动力节点

** * 创建个简单消息的监听 * 1.类上添加注解@Component和@RocketMQMessageListener * * @RocketMQMessageListener(topic = “powernode”, consumerGroup = “powernode-group”) * topic指定消费的主题,consumerGroup指定消费组,个主题可以有多个消费者组,个消息可以被多个不同的组的消费者都消费 * 2.实现RocketMQListener接口,注意泛型的使用 */

Javanewspaper的博客 651

动力节点RocketMQ视频笔记第二章RocketMQ与重复消费

RocketMQ提供了发送多种发送消息的模式,例如同步消息,异步消息,顺序消息,延迟消息,事务消息等,我们学习。

f5465245的博客 1002

RocketMQ学习笔记

RocketMQ学习记录

qq_51313170的博客 1464

简单的RocketMQ学习

简单的rocketMQ实例学习笔记,为自己刷b站学习视频记录下的,方便以后复习使用

qq_19342829的博客 2583

RocketMQ视频笔记第二章RocketMQ与重复消费

RocketMQ提供了发送多种发送消息的模式,例如同步消息,异步消息,顺序消息,延迟消息,事务消息等,我们学习。

Java___interview的博客 596

关于SpringCloud Alibaba,动力节点的这份笔记教程真香

什么是Spring Cloud Alibaba? 首先我们需要了解下Spring Cloud,然后再来了解Spring Cloud Alibaba; Spring Cloud 源自官方描述: Spring Cloud为开发人员提供了些工具用来快速构建分布式系统中的些常见模式和解决些常见问题(例如配置管理、服务发现、断路器、智能路由、微代理、控制总线、次性令牌、全局锁、领导选举、分布式会话、群集状态)。分布式系统的协调导致了很多样板式的代码(很多固定套路的代码),使用Spring Clo

f5465245的博客 845

RocketMQ () 基本信息

RocketMQ()

dmjxsy的博客 1126

RocketMQ

RocketMQ是阿里巴巴2016年MQ中间件,使用Java语言开发,RocketMQ款开源的****分布式消息系统****,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。同时,广泛应用于多个领域,包括异步通信解耦、企业解决方案、金融支付、电信、电子商务、快递物流、广告营销、社交、即时通信、移动应用、手游、视频、物联网、车联网等。

Sky_小天 1079

RocketMQ_安装、启动和报错处理

自己对着网上Rocketmq的教程尝试学了些,发现很多教程使用的rocket版本比较早,导致安装的时候容易出现很多问题这里自己对着官方文档和动力节点2023的rocketmq教程尝试装了下,最终启动成功,这里做下笔记

weixin_45852395的博客 2845

动力节点Springboot笔记】使用Aspect实现切面(以记录日志为例)

今天我们来说说spring中的切面Aspect,这是Spring的大优势。面向切面编程往往让我们的开发更加低耦合,也大大减少了代码量,同时呢让我们更专注于业务模块的开发,把那些与业务无关的东西提取出去,便于后期的维护和迭代。 视频看的动力节点的视频,整理了这篇博客作为笔记,以后复习时候看看,也分享给有需要的小伙伴。 视频资源:https://www.bilibili.com/video/BV1XQ4y1m7ex 相关概念 1. 切面(Aspect): 首先要理解‘切’字,需要把对象想象成个立方

Java___interview的博客 329

Java学习路线第五篇:微服务框架(2)

本课程学习的是目前最新版本2022.0.0.0-RC2。基于Spring Boot 3.0与JDK20的开发环境。 课程内容涵盖了SpringCloudAlibaba所有的技术点,主要讲述包括Nacos Discovery、Nacos Config、OpenFeign、Spring Cloud Loadbalancer、Spring Cloud Gateway、Sentinel、Seata、Skywalking+Elasticseach、Spring Cloud Sleuth+RocketMQ等技术的用法与

m0_47946173的博客 1322
上一篇: 【动力节点】最新rabbitmq笔记-1-6章What is RabbitMQ?
下一篇: RocketMQ视频笔记第二章RocketMQ与重复消费
Java___interview
博客等级 码龄6年 154粉丝 109原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值