Spring Cloud Alibaba整合RocketMQ架构原理分析

这篇具有很好参考价值的文章主要介绍了Spring Cloud Alibaba整合RocketMQ架构原理分析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

关于RocketMQ的原理,本文就不做详细分析了,这里就重点关注Spring Cloud Alibaba是如何整合RocketrMQ的。

Part.1  使用原生RocketMQ客户端?

RocketMQ提供了RocketMQ Client SDK,开发者可以直接依赖这个SDK,就可以完成消息的生产和消费。


<dependency>
    <groupId>org.apache.rocketmq</groupId>
    <artifactId>rocketmq-client</artifactId>
    <version>4.9.2</version> 
</dependency>

1.生产消息

RocketMQ Client SDK提供了生产消息的API接口DefaultMQProducer,开发者可以直接使用这个接口完成消息的生产。

既然是接口,且没有人和你对接,那么作为用户你就要自己搞清楚API的使用方法及最佳实践。

2.消费消息

RocketMQ Client SDK提供了消费消息的API接口DefaultMQPushConsumer和DefaultLitePullConsumer,开发者可以直接使用两个接口完成消息的消费。

同生产消息一样,开发者也要自己搞清楚API的使用方法及最佳实践。

3.开源用户不想多写一行代码

那么作为开源用户,一般大家都是喜欢投机取巧的,也就是说能少写一行代码,就尽量不写。

开发者觉得这种对接方式特别不友好,不仅自己要完成API接口的初始化,还要管理API接口的生命周期,比如初始化消费者API DefaultLitePullConsumer,且还要管理它的生命中后期。

虽然RocketMQ官方已经将API的接入方式做到尽量简单了,但是开发者还是觉得很烦,于是乎Spring Cloud Alibaba就提供了简洁的接入方式。

这里提示一下,RocketMQ官方也提供了Spring Boot Starter的接入方式,并降低了接入成本,但是开发者还是不满意,哈哈,这个就是开源用户的产品体验,真的很苛刻啊。

Part.2  Spring Cloud Alibaba整合RocketMQ

那么Spring Cloud Alibaba如何整合RocketMQ,其实本质上就是将开源用户不想写的代码统一的做成一个Satrter,并集成最佳实践并屏蔽RocketMQ Client SDK的代码细节,这样开源用户就不需要关心RocketMQ的原理细节,把自己当作为一个消息中间件小白就可以使用RocketMQ。

当然Spring Cloud Alibaba的初衷是好的,也是为了提高开源用户开发消息服务的效率。

但是作为一个已经在生产环境中使用Spring Cloud Alibaba去整合RocketMQ的开源用户,有自己的理解,利用Spring Cloud Alibaba提供的Starter去生产和消费消息,其实也是很繁琐的。

终其原因主要是Spring Cloud Alibaba整合了Spring Cloud Stream那一套机制,也就是Spring Cloud生成和消费消息的方式。

这样除了给开发者带来“只需要一个注就能生产和消费消息”的好处之外,还带来了“配置信息”非常繁琐的弊病。

也就是Spring Cloud框架的设计核心理念就是“规范配置信息”,用语法来约定消息服务的规范。

假如用户之前没有使用过Spring Cloud Stream(比如Kafka、RabbitMQ),那么作为一个小白是很难理解这样的配置语法的。

spring:
  cloud:
    stream:
      rocketmq:
        binder:
          name-server: 192.168.0.182:9876
        bindings:
          output1:
            producer:
              group: function-group
              sync: true
      bindings:
        output1:
          destination: function-topic
          content-type: application/json

以上的配置语法,肯定没有原生RocketMQ的配置更加直观,开发者要理解这种配置语法,必须要站在Spring Cloud Stream架构的角度去看,你就很容易上手了,不然脑海中很难想象到,居然还需要这么长的配置信息,以及为什么要这样配置。

当然这里只是作为一个已经非常熟悉Spring Cloud Stream玩法的资深专家的角度去看待这个问题,并从开源用户的角度去发现这个痛点问题。

关于Spring Cloud Alibaba如何去整合RocketMQ,大家也可以参考我的技术类型的书籍“Spring Cloud Alibaba微服务架构实战派上下册”。

另外我的新书RocketMQ消息中间件实战派上下册,在京东已经上架啦,目前都是5折,非常的实惠。

https://item.jd.com/14337086.html​编辑https://item.jd.com/14337086.html

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

RocketMQ消息中间件实战派上下册”是我既“Spring Cloud Alibaba微服务架构实战派上下册”之后,又一本历时超过1年半的巨无霸技术实战类型的书籍。

为了提高读者阅读本书的体验性,本书总共设计了十个特色,下面我一一的给技术小伙伴阐述一下。 

【特色一】由浅到深

本书将RocketMQ的技术原理和最佳实践体系化,按照由浅到深的顺序呈现给读者,使读者可以按照章节顺序按部就班地学习。当学习完全书内容之后,读者不仅能熟悉RocketMQ的核心原理,还能充分理解RocketMQ的“根”。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【特色二】技术新

本书不仅包括RocketMQ4.x4.9.2版本)的核心原理分析和最佳实践,还包括RocketMQ5.x5.1. 0版本)的新特性分析和最佳实践。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【特色三】精心设计的主线:零基础入门,循序渐进,直至彻底掌握RocketMQ

本书精心研究了程序类、架构类知识的认知规律,全书共分为6篇:基础;进阶;高级;高并发、高可用和高性能;应用;新特性,是一条相对科学的主线,让读者快速从“菜鸟”向“RocketMQ分布式架构实战高手”迈进。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【特色四】绘制了大量的图,便于读者理解RocketMQ的原理、架构、流程 

一图胜于文,书中在涉及原理、架构、流程的地方配有插图,以便读者更加直观地理解。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【特色五】从架构师和技术专家的视角分析RocketMQ 

本书创造性地分析了RocketMQ具备高并发、高可用和高性能的功能及原理,并从架构的视角展开分析,这些也是程序员进阶为技术专家或架构师必备的技能。

以下为从架构师和技术专家的视角分析RocketMQ典型案例,读者阅读完本书之后,也能够达到这样的水准。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【特色六】不仅有原理分析,还有大量的实战案例 

本书介绍了大量的实战案例,能让读者“动起来”,在实践中体会功能,而不只是一种概念上的理解。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

在讲解每一个知识模块时,我在思考:在这个知识模块中,哪些是读者必须实现的“标准动作”(实例);哪些“标准动作”是可以先完成的,以求读者能快速有一个感知;哪些“标准动作”具有一定难度, 需要放到后面完成。读者在实践完书中的案例之后,就能更容易理解那些抽象的概念和原理了。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

本书的目标之一是,让读者在动手中学习,而不是“看书时好像全明白了,一动手却发现什么都不会”。通过体系化的理论和实战案例去培养读者的主动学习能力,这样本书的价值就会被最大化。 

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

本书相信“知行合一”的理念,而不是“只知,而不行”,避免开发人员出现眼高手低的现象。尤其是在技术面试过程中,面试官更加看重的是既懂原理,又能够主动是实践技术的技术人。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【特色七】深入剖析原理 

 本书以系统思维的方式,从业务功能视角剖析 RocketMQ 底层的技术原理,使读者具备快速阅读 RocketMQ 框架源码的能力。读者只有具备了这种能力,才能举一反三,实现更复杂的功能,应对更复杂的应用场景。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

 【特色八】从运维的视角分析 RocketMQ 的最佳实践

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【特色九】参与开源 

 本书向读者展示了如何修改 RocketMQ 源码,并快速验证案例分析。这样,读者可以从中学到参与开源的技能,并为后续自己能够参与开源做准备。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【特色十】双色印刷,读者体验会更好 

为了提高读者阅读本书的体验,在有上下两册的前提下(巨无霸,超过800页),出版社不吝啬印刷成本,依然采用双色印刷。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【推荐】本书的最佳学习路径 

 为了提高读者学习RocketMQ的效率,我这边结合我自身从RocketMQ小白到RocketMQ专家的经历,为读者汇总了一条最佳学习路径。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【寄语】作者寄语 

RocketMQ是我深度参与研究的一款开源消息中间件,无论是从源码,还是架构场景,我都提炼了很多最佳实践。

在开源领域,技术小伙伴可以使用的开源消息中间件非常的多,比如KafkaPulsar等,我之所以选择研究RocketMQ,除了工作内容和角色需要之外,更多的还是自己感兴趣,因此我建议技术小伙伴一定要先培养自己的兴趣,兴趣才是提升技术硬实力的第1要素。

当然我并不止研究了RocketMQ,还研究了PulsarKafka等(包括开源消息中间件生态中的主流框架),只是本书作为一本关于RocketMQ实战派的书籍,我必须要以RocketMQ为主。

假如技术小伙伴想成为Java领域的架构师或者技术专家,我强烈建议你去研究RocketMQ,它会给你带来很多意想不到的技术和架构方法论的收获,这个也是我写本书的主要目的之一。

建议技术小伙伴按照本书设计的学习路线,逐章的去阅读和实战,这样学习效果会更好。

如果技术小伙伴有技术交流的,可以通过博文视点官方的读者群找到我的联系方式,并与我沟通,我会实时的解答读者的疑问。

本文公众号“架构随笔录”

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

本人视频号“架构随笔录”

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【博文视点】2021年度优秀作者

2021年我和博文视点合作了一本技术类型的书籍“Spring Cloud Alibaba微服务架构实战派上下册”,它是我涉足知识输出领域以来的第一本书,同时它也是我自己积累的技术池中部分技术的产出。

为了写好那本书,我几乎花费了所有的休息时间,并主动的承担了书的售后技术辅导和咨询的职责(几乎是有问必答,坚持了整整两年)。

所谓有付出总会有回报,Alibaba这本书的销量还不错,我也因此获得了博文视点颁发的2021年度优秀作者。

我很清楚,这个是博文视点为了鼓励我继续去用心写书,因此我又花了接近1年半的时间去写了RocketMQ消息中间件实战派上下册这本书。

所谓一分耕耘一份收获,我将我对RocketMQ的理解体系化的输出给喜欢技术的技术人,希望真的对大家有帮助。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

 【博文视点】2023技术成长领路人

2022年,我开始涉足技术直播和技术讲师领域,并和博文视点合作几次技术直播,直播效果还不错,再加上我孜孜不倦的布道“Spring Cloud Alibaba微服务架构实战派上下册”这本书相关的技术,并且这些技术都是有助于“技术人”快速成长的,因此也获得了博文视点颁发的“2023技术成长领路人”这个技术奖项,这个奖项也是为了鼓励我继续通过技术直播的方式给技术人去布道技术,因此只要我有时间,我就会孜孜不倦的去讲和聊技术。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务

【四维口袋】2022 KVP最具价值技术专家 

2022年,我开始涉足企业培训和相关技术直播,并和“四维口袋”合作了几次技术直播,并荣获了2022 KVP最具价值技术专家的技术奖项。

Spring Cloud Alibaba整合RocketMQ架构原理分析,Spring Cloud Alibaba,RocketMQ,java-rocketmq,rocketmq,架构,spring cloud alibaba,学习,微服务文章来源地址https://www.toymoban.com/news/detail-813887.html

到了这里,关于Spring Cloud Alibaba整合RocketMQ架构原理分析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Spring Cloud Alibaba】第 2-4 节 - 系统架构演变

    目录 一、单体应用架构 二、垂直应用架构  三、分布式架构  四、SOA架构  五、微服务架构 前后端分离 单系统拆分 抽取公共代码为服务层 引入服务治理中心: 维护复杂的服务调用关系 微服务的原子化拆分: 最小为止

    2023年04月09日
    浏览(45)
  • 拾壹博客Spring Boot转换成Spring Cloud Alibaba架构

    改的地方实在太多了,所以过程记录不下去了,但是业务模块跟Boot是一毛一样的没有变化,直接发项目代码,包括了nacos中的配置文件在对应的模块,运行大概是没有问题。 成果: 链接已死,真的大无语。 等哪天把家里的k8s的minio整一下。先传到CSDN咯。 PS:其实过年前就已

    2024年02月06日
    浏览(45)
  • 【Spring Cloud Alibaba】Sentinel运行原理

    本文基于sentinel-1.8.0版本 Sentinel 是面向分布式服务架构的流量控制组件,主要以流量为切入点,从限流、流量整形、熔断降级、系统负载保护、热点防护等多个维度来帮助开发者保障微服务的稳定性。 sentinel整体设计的很精巧,只需要一个sentinel-core便可以运行,它提供了诸如

    2024年02月15日
    浏览(43)
  • Spring Cloud Alibaba 整合Seata 之概念介绍及Seata-server搭建

    目录 前言 基础介绍 官方文档 模式分类 角色介绍 Seata Server 部署 -  docker-compose  数据库 服务器  nacos配置 docker-compose.yaml 启动 后记 Seata 是 阿里巴巴 开源的 分布式事务中间件,以 高效 并且对业务 0 侵入 的方式,解决 微服务 场景下面临的分布式事务问题。 主要指讲述

    2024年02月07日
    浏览(82)
  • 04-Springbooot与Spring Cloud Alibaba搭建后端架构

      settings.xml,配好了阿里镜像 02-maven的安装配置_NikoWord的博客-CSDN博客 01-IDEA使用技巧_NikoWord的博客-CSDN博客 04-设置idea编码、编译_NikoWord的博客-CSDN博客

    2024年02月08日
    浏览(62)
  • Spring Cloud Alibaba 最新版本(基于Spring Boot 3.1.0)整合完整使用及与各中间件集成

    目录 前言 源码地址 官方中文文档 使用版本 spring Spring Boot 3.1.0 中间件 使用到的组件与功能 环境安装 虚拟机 nexus nacos 集成过程 工程搭建 父工程搭建 子工程 服务集成 nacos集成 配置文件 服务注册与发现-discovery 服务注册 启动 服务发现 测试 配置管理-config 新增配置  测试

    2024年02月07日
    浏览(53)
  • 构建弹性可扩展的微服务架构:基于Spring Cloud Alibaba 的实践

    💂 个人网站:【工具大全】【游戏大全】【神级源码资源网】 🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】 💅 寻找学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】 随着互联网业务的不断发展,传统的单体应用逐渐无法满足日益复杂的业务需求和

    2024年02月14日
    浏览(297)
  • 【Alibaba中间件技术系列】「RocketMQ技术专题」RocketMQ消息发送的全部流程和落盘原理分析

    RocketMQ目前在国内应该是比较流行的MQ 了,目前本人也在公司的项目中进行使用和研究,借着这个机会,分析一下RocketMQ 发送一条消息到存储一条消息的过程,这样会对以后大家分析和研究RocketMQ相关的问题有一定的帮助。 分析的总体技术范围发送到存储,本文的主要目的是

    2024年02月10日
    浏览(47)
  • Spring Cloud Alibaba 微服务1,系统架构演变 + Nginx反向代理与负载均衡

    🏆作者简介: 哪吒 ,CSDN2022博客之星Top1、CSDN2021博客之星Top2、多届新星计划导师✌、博客专家💪 , 专注Java硬核干货分享,立志做到Java赛道全网Top N。 🏆本文收录于 Java基础教程系列(进阶篇) ,本专栏是针对大学生、初级Java工程师精心打造, 针对Java生态,逐个击破,

    2024年02月02日
    浏览(52)
  • 整合spring cloud云服务架构 - 企业分布式微服务云架构构建

        1. 介绍 Commonservice-system是一个大型分布式、微服务、面向企业的JavaEE体系快速研发平台,基于模块化、服务化、原子化、热插拔的设计思想,使用成熟领先的无商业限制的主流开源技术构建。采用服务化的组件开发模式,可实现复杂的业务功能。提供驱动式开发模式,

    2024年02月16日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包