RocketMQ整理

news2024/11/26 16:35:02

        RocketMQ在阿里云上的商业版本,集成了阿里内部一些更深层次的功能及运维定制。开源版本,功能上略有缺失,但大体上是一样的。

        使用Java开发,便于深度定制。最早叫MetaQ。消息吞吐量虽然依然不如Kafka,但是却比RabbitMQ高很多。在阿里内部,RocketMQ集群每天处理的请求数超过5万亿次,支持的核心应用超过3000个。经过阿里双十一多次考验。RocketMQ天生就为金融互联网而生,因此他的消息可靠性相比Kafka也有了很大的提升,而消息吞吐量相比RabbitMQ也有很大的提升。另外,RocketMQ的高级功能越来越全面,广播消费、延迟队列、死信队列等等高级功能一应俱全,甚至某些业务功能比如事务消息,已经很领先。除了Java客户端,其他语言客户端也有不断推出。

一、工作原理

1.1、集群架构:

RocketMQ由以下这几个组件组成

  • NameServer : 提供轻量级的Broker路由服务。管理Broker。
  • Broker:实际处理消息存储、转发等服务的核心组件。
  • 消息生产者集群和消费者集群。通常是业务系统中的一个功能模块。
  • Topic:区分消息的种类;一个发送者可以发送消息给一个或者多个Topic;一个消息的接收者可以订阅一个或者多个Topic消息。
  • Message Queue:相当于是Topic的分区;用于并行发送和接收消息。一个queueId就代表了一个Mes

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/533869.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

监控需求来源及主流方案对比

我们从开始了解监控系统来说,首先我们要先了解监控的需求来源,即监控系统都可以用于做什么? 监控需求来源 其实最初的需求很简单,即"系统出问题了我们要能及时感知"。后面随着技术的不断发展,我们对监控系统提出了更…

Linux的超级用户及权限

目录 一:Linux下的两个用户 二:权限 1:目录文件 文件创建的默认权限 2:普通文件 一:Linux下的两个用户 在使用Linux的时候会有两个身份,第一个是普通用户,普通用户在很多方面是受阻的,原因就是权限不够,在这种情况下就有一个超级用户,也…

iOS图片系列一 图片的基本属性

图片在项目的开发中使用频率很高,但是绝大部分都是作为普通的展示或者偶尔需要裁剪,并不需要对图片做什么特别的处理,最近做了一个项目对于图片的需求功能比较多,踩了很多坑的同时也对图片的使用有了更深的理解,整理下…

C++面经:初始化全局变量和未初始化全局变量有什么区别

全局变量初始化而且初始值不为0,那么这样的全局变量是放在内存的.data段的,如果全局变量初始值为0或者未初始化,那么这样的全局变量是放在.bss段的。 考点: 考察C/C语言内存模型,.data,.bss段存放的内容。 …

Windows shell环境: 从git bash切换到msys2

文章目录 1. 目的2. msys2 环境 (Environment)3. 升级 MSYS2: 使用 pacman 滚动式升级整个系统4. 在 Windows Terminal 中增加显示 MSYS25. 使用 zsh6. VSCode 中的配置增加 MSYS2 终端配置 git 路径 7. 安装 C/C 依赖库安装 ag查询 bison 和 flex 的安装目录 8. References 1.…

ES6模块化规范

在没有ES6模块化规范前,有像AMD、CMD这样的浏览器模块化规范,还有像CommonJS这样的服务端模块化规范。 2015年,JS终于推出了官方的模块化规范,为了统一各种规范,我们简称ES6 模块化。 ES6目前作为JS的内置模块化系统&a…

Spring的创建和使用,存储和读取Bean总结

目录 Spring项目创建和使用流程 1.创建一个 Spring 项目 2.存储 Bean 3.读取 Bean ApplicationContext和BeanFactory的区别 通过注解存储 Bean对象 五大类注解的关系 Java程序标准分层 方法注解Bean 注入Bean对象的三种方式 1.属性注入 2.Setter注入 3.构造方法注入…

【Java数据结构】Map和Set

Map和Set 搜索树概念操作 - 查找操作 - 插入操作 - 删除cur没有左树(cur.left null)cur没有右树(cur.right null)cur既有左树也有右树(最困难的情况)替罪羊删除法 操作代码性能分析和 java 类集的关系 搜…

程序员困局:去大城市进大厂却买不了房,回老家又没有高薪工作…

对于在外打拼的程序员来说,难的是进大厂,而不是买不起房。 进大厂的程序员,能不能买得起房? 进大厂的程序员的薪资,还是相当可观的。以阿里P6为例,年薪50万,到手40万左右,刨去10万…

【C++学习】C++11——新特性 | 右值引用 | 完美转发

🐱作者:一只大喵咪1201 🐱专栏:《C学习》 🔥格言:你只管努力,剩下的交给时间! C11——新特性 | 右值引用 | 完美转发 👀列表初始化🦴 std::initializer_list…

收藏!网络行业主流的六大技术认证全科普

大家好,我是老杨。你的年终总结做完了没?还没做完,点击“年终总结”,拿个模板,快速完成。 很多人在年末都会有列一个新年愿望清单,写写来年想要完成的事情。 不少网工在这两年的就业环境之下,…

Nginx-部署2个vue项目(多个项目)-二级域名设置代理

前言 最近在实际开发过程中,需要在服务器部署2个项目。需要nginx二级域名。 开始时候在网上查了一圈,各有说法,不是很全,很头大。这里把自己成功的二级域名代理记录一下。 网上有很多文章说要该router.js文件,要该vu…

自动备份交换机的配置到远程服务器

环境 交换机配置修改后及时备份相关配置,每次配置变化后需要在1分钟后自动进行保存,并且将配置上传至FTP服务器;每隔30分钟,交换机自动把配置上传到FTP服务器 配置命令: [huawei]set save-configuration delay 1 //…

单片机外围电路:电阻之上下拉电阻

1.基础概念 上拉就是将不确定的信号通过一个电阻钳位在高电平,电阻同时起限流作用。下拉同理,也是将不确定的信号通过一个电阻钳位在低电平。 2.基础应用 上下拉电阻在数字电路中使用,为了好理解一点,可把上下拉电阻大致分为两种…

货币简史:从物物交换到数字货币

货币简史 1. 物物交换阶段2. 一般等价物阶段3. 信用货币阶段4. 电子货币阶段5. 数字货币阶段 金钱是什么时候产生的呢,这取决于你如何定义金钱。 费利克斯马丁(FelixMartin)名为《金钱:未授权的传记》(Money:An Unauthorized Biography)书中…

19c rac环境修改pubic, vip,scan ip步骤

19c rac环境第一次修改public、vip和scan ip,和11g还是稍有不同。首先说明下环境 具体步骤如下 1、修改public地址,关闭实例后使用root用户操作 [rootdb1 ~]# ./oifcfg getif bond0 172.20.30.0 global public bond2 100.100.100.0 global clust…

【JVM】JVM堆内存(heap)详解

文章目录 前言一、堆内存划分二、为什么移除永久代?三、分代概念四、为什么分代?五、为什么survivor分为两块相等大小的幸存空间?六、JVM堆内存常用参数七、垃圾回收算法(GC,Garbage Collection)八、垃圾收…

java 反射及代理模式初步学习

java 反射及代理模式初步学习 0. 什么是反射? Java的反射(reflection)机制是指在程序的运行状态中,可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法&#xf…

小程序组件

swiper swiper 和 swiper-item 结合使用,, swiper有默认高度 300rpx 属性: autoplay : 自动播放circular : 循环播放indicator-dots : 显示指示点indicator-active-color : 轮播选中的颜色 &…

SpringBoot整合钉钉消息推送(四十四)

从头开始,并不意味着失败,相反,正是拥抱成功的第一步,即使还会继续失败 上一章简单介绍了 SpringBoot 发送邮件(四十三), 如果没有看过,请观看上一章 钉钉消息推送, 官方文档: https://open.dingtalk.com/document/gr…