<a href="https://github.com/apache/rocketmq">https://github.com/apache/rocketmq</a>
<a href="https://github.com/apache/rocketmq-externals">https://github.com/apache/rocketmq-externals</a>
RocketMQ分成两个进程运行
Namesrv
Broker
Namesrv,命名服务,主要负责Broker状态管理,Topic路由信息查询等等,端口是9876
Broker负责消息存储,转发,等等,一般占用3个端口
10911 -- Broker主逻辑端口
10912 -- 持久化端口
10909 -- vip端口
另外,Namesrv可以集群配置,各个Namesrv之间是对等的,彼此不通信,不需要互相通信。
Broker可以以单master, 多master,多master多slave等多种方式运行。

rocketmq-broker 主要的业务逻辑,消息收发,主从同步, pagecache等等
rocketmq-client 客户端接口,比如生产者和消费者。pull和push消费模式,消息负载均衡等等。
rocketmq-common 公用数据结构等等
rocketmq-distribution 编译模块,编译输出等
rocketmq-example 示例,比如生产者和消费者
rocketmq-fliter
rocketmq-flitersrv
rocketmq-logappender 日志相关
rocketmq-namesrv Namesrv服务
rocketmq-openmessaging
rocketmq-remoting 远程调用接口,封装Netty,主要是NettyRemotingServer和NettyRemotingClient
rocketmq-srvutil server util,提供一些公用的工具方法,比如解析命令行参数
rocketmq-store 消息存储
rocketmq-test 测试
rocketmq-tools 管理工具,比如有名的mqadmin工具
本文转自rongwei84n 51CTO博客,原文链接:http://blog.51cto.com/483181/2043857,如需转载请自行联系原作者