为什么要使用消息队列
1 削峰填谷
2 系统解耦
3 异步处理
4 数据的最终一致性
RocketMQ部署
RocketMQ代码工程
broker:存放RocketMQ的Broker相关的代码,这里的代码可以用来启动Broker进程; client:存放RocketMQ的Producer、Consumer这些客户端的代码,生产消息、消费消息的代码都在里面; common:存放公共代码; dev:存放开发相关的一些信息; distribution:存放用来部署RocketMQ的一些东西,比如bin目录 、conf目录等等; example:存放RocketMQ的一些例子; filter:存放RocketMQ的与过滤器相关的代码; logappender和logging:存放RocketMQ的日志打印相关的东西; namesvr:存放NameServer的源码; openmessaging:这是开放消息标准,先忽略; remoting:存放RocketMQ的远程网络通信模块的代码,基于netty实现; srvutil:存放一些工具类; store:存放Broker上存储相关的一些源码; style、test、tools:存放checkstyle代码检查的东西,一些测试相关的类,还有就是tools里放的一些命令行监控工具类。
参考 http://www.mstacks.com/137/1467.html#content1467