锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 开源技术 / Java开源技术 / RocketMQ、RocketMQ学习、RocketMQ剖析和RocketMQ开发
服务方向
人工智能数据处理
人工智能培训
kaldi数据准备
小语种语音识别
语音识别标注
语音识别系统
语音识别转文字
kaldi开发技术服务
软件开发
运动控制卡上位机
机械加工软件
软件开发培训
Java 安卓移动开发
VC++
C#软件
汇编和破解
驱动开发
联系方式
固话:0371-63888850
手机:138-0381-0136
Q Q:396806883
微信:ryysoft

锐英源精品开源,禁止转载和任何形式的非法内容使用,违者必究。本文仅进行了翻译,如果需要实际技术请联系锐英源。


RocketMQ、RocketMQ学习、RocketMQ剖析和RocketMQ开发

背景

消息中间件软件我以前听说过RabbitMQ,这几天看头条上科技文章又知道了阿里巴巴的RocketMQ,有一定兴趣,就想看下RabbitMQ的代码,国内gitee的一个分支下用迅雷下载后,还解压不了,可能这个分支的管理者没管理好, 不是官方分支,到github下才下载了源代码,源代码有3.4M,解压后发现文件不少。

RocketMQ学习

首先是RocketMQ的开发语言,在我最初的想法里,会是C语言,但是看到是Java,也能想透,Java的企业级开发,经过了历史考验,性能肯定是没问题的,所以用Java开发大数据的中间件肯定也是没问题的。

RocketMQ学习要学它的模型思想和集群搭建过程,这些都是刚入行程序员比较欠缺的,模型思想的方向是抽象思维,集群搭建是架构思维。

模型思想用图表示比较直观,比如消息用信封形状来表示,一眼就可以看出是通知消息。模型图中箭头线代表数据流向,箭头线肯定有发送和接收方。

集群搭建首先要理解几类服务器的目的,理解目的后,自己画一些不同搭建形式的部署图就好理解了。说实在的,如果没做过平台开发,看里面的术语确实不好理解。首先是NameServer服务器,它提供调度的基本信息,但不参与调度,平台内的其它服务器都是自调度,谁上线谁下线,其它服务器自己处理。调度基本信息包含配置信息和状态信息。Broker服务器理解为中间服务器,谁的中间呢,提供者和消费者之间,因为提供者和消费者安排很复杂,所以Broker中间服务器要再细分,就有了Broker中间服务器群组概念,可以按地区,按功能,按业务来理解这类Broker中间群组,反正一个群组做一件事,和其它群组没关系。

RocketMQ剖析

RocketMQ的源代码主要在broker、namesrv、openmessaging和tools等其它目录下,代码也包来组织,比较好理解,不过暂时我看的不多。

BrokerController.java是中间服务器控制类,里面肯定有开启,关闭,状态刷新这类处理。

RocketMQ开发

小平台和独立软件用不上RocketMQ,部署形式上有地市区域情况或省级情况,可以考虑,另外如果平台内服务器多,消息多,就要采用RocketMQ开发。

友情链接
版权所有 Copyright(c)2004-2021 锐英源软件
公司注册号:410105000449586 豫ICP备08007559号 最佳分辨率 1024*768
地址:郑州大学北校区院(文化路97号院)内