消息队列 RocketMQ 版是阿里云基于 Apache RocketMQ 构建的低延迟、高并发、高可用、高可靠的分布式消息中间件。
该产品最初由阿里巴巴自研并捐赠给 Apache 基金会,服务于阿里集团 13 年,覆盖全集团所有业务。作为双十一交易核心链路的官方指定产品,支撑千万级并发、万亿级数据洪峰

其主要功能有:

  • AMQP 规范以及消息定义
  • 消息发送的过程以及可靠消息投递机制
  • 消息消费的过程以及消费者性能优化方法
  • 交换器组件以及消息路由机制。
  • RabbitMQ 分布式集群构建。
  • RabbitMQ 在系统集成上的具体应用

目前, RabbitMQ 在各大互联网公司中应用十分广泛。通过 RabbitMQ 所提供的丰富的交互 API 、友好的管理界面以及与生俱来的分布式特性,我们可以轻松构建 个强大的消息通信系统。然而消息通信系统的构建一方面降低了耦合性,另 方面也不可避免地引入了复杂性 如果使用不当,反而会引发各种问题。本文档深入分析消息通信的各个方面,不仅介绍RabbitMQ 的各项基本功能,更为重要的是提供了 系列面向实战的最佳实践,可以作为广大技术人员的开发指南

由于文档内容过多,因此为了避免影响到大家的阅读体验,在此只以截图展示部分内容,详细完整版的看文末有免费的获取方式!

下面是RabbitMQ核心笔记的目录和知识点内容展示

RabbitMQ和应用程序体系结构

  • RabbitMQ特性
  • 为什么RabbitMQ正在成为消息通信架构的一种主流选择?
  • 高级消息队列(Advanced Messaging Queuing)模型的基本要素,该模型构成了RabbitMQ的基础

使用AMQ协议与Rabbit进行交互

  • 使用AMQ协议与RabbitMQ进行通信
  • AMQ协议的底层帧结构
  • 向RabbitMQ发布消息
  • 从RabbitMQ消费消息

消息属性详解

  • 消息属性以及对消息投递的影响
  • 使用消息属性在发布者和消费者之间创建契约

消息发布的性能权衡

  • RabbitMQ中的消息可靠投递
  • 发布者vs性能权衡

消费消息,避免拉取

  • 消费消息
  • 优化消费者吞吐量
  • 消费者和队列的独占性
  • 为消费者指定服务质量

消息路由模式

  • RabbitMQ中四种基本类型交换器以及交换器插件
  • 如何为应用架构选择合适的交换器
  • 交换器间路由为消息通信带来更多路由选择

管理数据中心或云中的RabbitMQ

  • RabbitMQ 集群
  • 集群管理
  • 队列位置如何影响性能
  • 集群设置步骤
  • 节点崩溃时的应对方法

跨集群的消息分发

  • 联合交换器和联合队列
  • 如何在AWS上设置多个联合RabbitMQ节点
  • RabbitMQ联合的多种应用模式

集成与定制

  • 使用替代协议
  • 使用MQTT协议的优势与方法
  • 基于STOMP应用如何与RabbitMQ通信
  • 如何使用Web STOMP直接从Web浏览器发起通信
  • 如何使用statelessd通过HTTP协议向RabbitMQ发送消息

数据库集成

  • 从PostgreSQL发布AMQP消息
  • 让RabbitMQ监听来自PostgreSQL的通知
  • 使用InfluxDB存储交换器来存储消息

小编为了大家能在简历上写熟练RocketMQ,这份大师级的RocketMQ核心笔记以及RocketMQ原理电子书,今天就拿出来分享给大家通过本笔记可以让大家对分布式系统解耦有一定认识,并且能够通过快速使用RocketMQ实现分布式服务的异步通信,笔记中还会通过项目案例实战让学员对RocketMQ的应用场景有所体会,最后再通过源码角度让大家对RocketMQ的原理有所理解,不仅做到“知其然”,亦“知其所以然”。

RocketMQ 原理电子书

目录

RocketMQ 物理部署结构

顺序消息原理

单个 JVM 进程也能利用机器超大内存

由于篇幅原因,这份RocketMQ核心笔记已经被整理成了PDF文档,有需要扫一扫下方

 

我要吹爆这份阿里中间件技术内部的RM笔记,简直佩服到五体投地的更多相关文章

  1. 阿里开源消息中间件RocketMQ的前世今生-转自阿里中间件

    昨天,我们将分布式消息中间件RocketMQ捐赠给了开源软件基金会Apache. 孵化成功后,RocketMQ或将成为国内首个互联网中间件在Apache上的顶级项目. 消息一出,本以为群众的反应是这样 ...

  2. 【公开课】【阿里在线技术峰会】魏鹏:基于Java容器的多应用部署技术实践

    对于公开课,可能目前用不上这些,但是往往能在以后想解决方案的时候帮助到我.以下是阿里对公开课的整理 摘要: 在首届阿里巴巴在线峰会上,阿里巴巴中间件技术部专家魏鹏为大家带来了题为<基于Java容 ...

  3. 干了这碗鸡汤:从理发店小弟到阿里P10技术大牛

    1.引言 MIT TR 35(MIT Technology Review 35 Innovators Under 35)——“全球 35 位 35 岁以下科技创新青年”榜单,是全球最权威的青年科技创新 ...

  4. 腾讯 Techo 开发者大会首发来袭!云原生中间件技术实践等你来!

    腾讯 Techo 开发者大会是由腾讯云发起的面向全球开发者和技术爱好者的年度盛会,2019 年 11 月 6 日 - 7 日将在北京嘉里大酒店首次召开. 作为一个专注于前沿技术研讨的非商业大会,Tec ...

  5. 开源爆款,阿里P7Android技术笔记,理论与实战齐飞,限时开放下载!

    自我介绍 2013年java转到Android开发,在小厂待过,也去过华为,OPPO等大厂待过,18年四月份进了阿里一直到现在. 被人面试过,也面试过很多人.深知大多数初中级Android工程师,想要 ...

  6. 阿里CBU技术面试小结

    一个执着于技术的公众号 前言 今天给大家分享一篇胡文兴同学阿里CBU技术面试的自我总结,希望通过本篇文章也让正在准备求职面试的你有所帮助. 本篇文章已经征得原作者同意转载至本公众号,并且征得他的同意标 ...

  7. 【公开课】【阿里在线技术峰会】何登成:AliSQL性能优化与功能突破的演进之路

    MySQL的公开课,可能目前用不上这些,但是往往能在以后想解决方案的时候帮助到我.以下是阿里对公开课的整理 摘要: 本文根据阿里高级数据库专家何登成在首届阿里巴巴在线技术峰会上的分享整理而成.他主要介 ...

  8. 不止是动态化:Weex项目和阿里无线技术开源方向

    这是开发者正在书写的峥嵘岁月.受益开源,回馈社区.阿里巴巴集团已经开源115个项目,并正式加入FSF基金会,Apache基金会,linux 基金会和Xen的顾问团队,并在云栖大会北京峰会宣布AliSQ ...

  9. PolarDB阿里初赛问题记录 PolarDB 阿里 中间件 比赛 性能 工程手册

    Contents 这篇纯碎是碎碎念记录. 每个value都是4KB,总共最多会写6400W个value,算下来就是64 * 1000 * 1000 * 4 * 1024 Bytes ≈ 256G. 每 ...

随机推荐

  1. 学习一下 JVM (二) -- 学习一下 JVM 中对象、String 相关知识

    一.JDK 8 版本下 JVM 对象的分配.布局.访问(简单了解下) 1.对象的创建过程 (1)前言 Java 是一门面向对象的编程语言,程序运行过程中在任意时刻都可能有对象被创建.开发中常用 new ...

  2. lammps-MD整体思路

    1.收敛性测试 (1)由不同尺寸模型(不同的原子数)和E的关系曲线,再确定尺寸n*n*n: 2.优化结构(nve-nvt-npt) 系综的实现方式(相关命令):https://www.cnblogs. ...

  3. 华师2019软件专硕复试机试题最后一题G:找数

    G. 找数 单点时限: 1.0 sec 内存限制: 256 MB 问题描述 输入一个整数 n( 2≤n≤10 ) ,你需要找到一些 n 位数(允许有前置 0 ,见样例),这些 n 位数均 由 0 ~ ...

  4. 文件属性及find命令总结

    第1章   文件属性 1.1   文件的属性 1.1.1    查看文件的详细属性       PS:ls查看的文件或目录默认的是按照名字的第一个字母进行正序排序       ls 参数选项: -t ...

  5. Selenium 如何复用浏览器【解决扫码登录等问题】

    Selenium中复用已经打开的浏览器进行自动化测试,可以辅助我们解决某些登录需要扫二维码之后,才能进行的操作 目前只支持谷歌Chrome浏览器,那需要做哪些准备操作呢?往下看 1.windows和M ...

  6. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

  7. Shader之溶解效果的几种实现方法

    这里通过 “是否丢弃像素”的2种方法,写2个shader,效果是一样的,也提到了,丢弃某个像素的3种方式. 是否丢弃: 1.通过脚本控制shader变量判断当前是否丢弃像素,需要额外脚本: 2.sha ...

  8. 面试【JAVA基础】多线程

    本次整理的内容如下: 1.进程与线程的区别 进程是一个可执行的程序,是系统资源分配的基本单位:线程是进程内相对独立的可执行单元,是操作系统进行任务调度的基本单位. 2.进程间的通信方式 2.1.操作系 ...

  9. vue实现局部预览打印

    html <div id="subOutputRank-print"> <h1></h1> </div> js doPrint(e) ...

  10. Java实现获取命令行中的指定数据

    构造一个ping的命令类这个类中可以设置需要ping的目标域名类提供方法public void exec();方法执行完毕后可以读取ping的次数,ping的成功回应包个数ping的丢包个数,ping ...