Java 简易版 MQ 项目教程

Java 简易版 MQ 项目教程

1. 项目目录结构及介绍

mq
├── mq-broker
├── mq-common
├── mq-consumer
├── mq-producer
├── mq-test
├── coveralls.yml
├── .gitignore
├── travis.yml
├── CHANGELOG.md
├── LICENSE.txt
├── README.md
├── cgit.bat
├── cgit.sh
├── pom.xml
├── qrcode.jpg
├── release.bat
├── release.sh
└── release_rm.sh

目录结构说明

  • mq-broker: 注册中心模块,负责消息的存储和转发。
  • mq-common: 公共代码模块,包含项目中通用的工具类和常量。
  • mq-consumer: 客户端模块,负责消息的接收和处理。
  • mq-producer: 服务端模块,负责消息的发送。
  • mq-test: 测试模块,包含项目的单元测试和集成测试代码。
  • coveralls.yml: Coveralls 配置文件,用于代码覆盖率报告。
  • .gitignore: Git 忽略文件配置。
  • travis.yml: Travis CI 配置文件,用于持续集成。
  • CHANGELOG.md: 项目变更日志。
  • LICENSE.txt: 项目许可证文件。
  • README.md: 项目说明文档。
  • cgit.bat: Git 命令批处理文件。
  • cgit.sh: Git 命令脚本文件。
  • pom.xml: Maven 项目配置文件。
  • qrcode.jpg: 项目二维码图片。
  • release.bat: 发布脚本批处理文件。
  • release.sh: 发布脚本文件。
  • release_rm.sh: 发布清理脚本文件。

2. 项目启动文件介绍

启动 Broker

MqBroker broker = new MqBroker();
broker.start();

启动消费者

final MqConsumerPush mqConsumerPush = new MqConsumerPush();
mqConsumerPush.start();
mqConsumerPush.subscribe("TOPIC", "TAGA");
mqConsumerPush.registerListener(new IMqConsumerListener() {
    @Override
    public ConsumerStatus consumer(MqMessage mqMessage, IMqConsumerListenerContext context) {
        System.out.println("---------- 自定义 " + JSON.toJSONString(mqMessage));
        return ConsumerStatus.SUCCESS;
    }
});

启动生产者

MqProducer mqProducer = new MqProducer();
mqProducer.start();
String message = "HELLO MQ";
MqMessage mqMessage = new MqMessage();
mqMessage.setTopic("TOPIC");
mqMessage.setTags(Arrays.asList("TAGA", "TAGB"));
mqMessage.setPayload(message);
SendResult sendResult = mqProducer.send(mqMessage);
System.out.println(JSON.toJSON(sendResult));

3. 项目配置文件介绍

Maven 依赖配置

pom.xml 文件中添加以下依赖:

<dependency>
    <groupId>com.github.houbb</groupId>
    <artifactId>mq-broker</artifactId>
    <version>0.1.3</version>
</dependency>

<dependency>
    <groupId>com.github.houbb</groupId>
    <artifactId>mq-consumer</artifactId>
    <version>0.1.3</version>
</dependency>

<dependency>
    <groupId>com.github.houbb</groupId>
    <artifactId>mq-producer</artifactId>
    <version>0.1.3</version>
</dependency>

其他配置文件

  • coveralls.yml: 配置 Coveralls 代码覆盖率服务。
  • travis.yml: 配置 Travis CI 持续集成服务。
  • .gitignore: 配置 Git 忽略的文件和目录。

通过以上配置,您可以顺利启动和配置 Java 简易版 MQ 项目。

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值