β

分布式消息中间件 RocketMQ:概述与源码编译篇

并发编程网 – ifeve.com 15 阅读

一、前言

Apache RocketMQ 是一个分布式消息中间件,其具有低延迟、高性能和可靠性、万亿级容量、灵活的可扩展性特性;它是阿里巴巴在2012年开源的分布式消息中间件,目前已经捐赠给 Apache 软件基金会,并于2017年9月25日成为 Apache 的顶级项目。

二、RocketMQ架构

image.png 本图来自rocketmq官网

RocketMQ 是一个分布式消息中间件,其具有低延迟、高性能和可靠性、万亿级容量、灵活的可扩展性特性。它主要有四部分组成,分别为name servers, brokers, producers and consumers.每部分都可以进行水平扩展,而不会出现单点问题。

注:broker在启动时候会去链接nameserver, 然后注册topic信息到NameServer,NameServer维护了所有topic的信息和对应的broker路由信息,broker与NameServer之间是有心跳检查的,NameServer 发现broker挂了后,会从注册信息里面删除,这类似zookeeper实现的服务注册;producer则需要配置nameserver的地址,然后定时从NameServer获取对应topic的路由信息(这个topic的消息应该路由到那个broker),同时producer与NameServer,proudcer与broker有心跳检查;同理Consumer需要配置NameServer的地址,然后定时从NameServer获取对应topic的路由信息(应该从那个broker的消息队列获取消息),同时Consumer与NameServer,Consumer与broker有心跳检查。

三、Mac下RocketMq源码编译与环境搭建

3.1 源码下载与编译

出现上面结果说明源码以及编译OK了,然后在源码根目录的distribution/target目录会出现apache-rocketmq.tar.gz,如下图 image.png

解压apache-rocketmq.tar.gz文件夹,结果如下: image.png

image.png

image.png

最后

原创文章,转载请注明: 转载自 并发编程网 – ifeve.com 本文链接地址: 分布式消息中间件 RocketMQ:概述与源码编译篇

加多

高级 Java 攻城狮 at 阿里巴巴
加多,目前就职于阿里巴巴,热衷并发编程、ClassLoader,Spring等开源框架,分布式RPC框架dubbo,springcloud等;爱好音乐,运动。微信公众号:技术原始积累。知识星球账号:技术原始积累
Favorite Loading 添加本文到我的收藏

Related posts:

  1. 《Spark官方文档》集群模式概览
  2. 《Apache RocketMQ用户指南》官方文档
  3. 《Apache RocketMQ用户指南》之日志追加消息示例
  4. 《Apache RocketMQ用户指南》之定时消息示例
  5. 《Spark 官方文档》
  6. 《Spark 官方文档》硬件配置
  7. 《Spark1.6.1官方文档》Spark1.6.1操作指南
  8. 《Spark官方文档》提交Spark应用
  9. 《Spark 官方文档》Spark快速入门
  10. 《Apache RocketMQ用户指南》之简单消息示例
  11. 《Spark 官方文档》机器学习库(MLlib)指南
  12. Adopt Open JDK官方文档(五) Docker镜像
  13. 《Spark官方文档》Spark操作指南
  14. 《Apache RocketMQ用户指南》之批量消息示例
  15. 《Apache RocketMQ用户指南》之有序的消息示例
作者:并发编程网 – ifeve.com
让天下没有难学的技术
原文地址:分布式消息中间件 RocketMQ:概述与源码编译篇, 感谢原作者分享。

发表评论