# MiniMQ **Repository Path**: jc_zheng/MiniMQ ## Basic Information - **Project Name**: MiniMQ - **Description**: 微型MQ服务框架 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 14 - **Created**: 2017-02-16 - **Last Updated**: 2021-11-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #MiniMQ 目前项目是起步阶段,是自己学习netty的延伸出来。近期看了阿里新出来的 《[阿里巴巴Java开发手册](https://yq.aliyun.com/attachment/download/?id=1173)》,感觉蛮好的 ,可以作为项目的编码标准。 * 第一阶段主要学习一些别人的轮子MQ,看看简单的MQ设计思路,多方借鉴好的结构

https://github.com/uncodecn/uncode-mq.git https://github.com/tang-jie/AvatarMQ.git
https://git.oschina.net/xuxueli0323/xxl-mq
https://git.oschina.net/gpx123/java_mq
https://git.oschina.net/itteam/sf-mq
https://git.oschina.net/rushmore/zbus

* 第二阶段阅读和参看主流java类的MQ框架,比如RocketMQ,ActiveMQ.以阿里的RocketMQ为主,也会参看 Kafka,RabbitMQ,ZeroMQ

https://github.com/apache/incubator-rocketmq
https://github.com/apache/activemq

* 第三阶会重写这个项目部分依赖的框架,作为下一步的学习 #模块划分 - Broker 简单来说就是消息队列服务器实体。 - Producer:消息的生产者 主要用来发送消息给消费者。 - Consumer:消息的消费者 主要用来接收生产者的消息。 - Routing Key:路由关键字(Topic), 主要用来控制生产者和消费者之间的发送与接收消息的对应关系。 - Channel:消息通道 在客户端的每个连接里,可建立多个channel,每个channel代表一个会话任务。 # 开发工具 * eclipse 4.5+,IDEA也可以 * maven3.x * git * JDK1.8+ #任务说明 * 序列化部分需要扩展 * 目前只支持netty作为默认通信方式 * 参考dubbo,用spring作为bean管理和功能扩展