尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

分布式系统开发(3)——RabbitMQ独立模块

发布时间:2026/9/26 8:07:50

资讯中心
01
ARTICLE

分布式系统开发(3)——RabbitMQ独立模块

分布式系统开发(3)——RabbitMQ独立模块
系列文章分布式系统开发1——MinIO 对象存储分布式系统开发2——Redis 缓存与分布式锁分布式系统开发3——RabbitMQ独立模块分布式系统开发4——DubboZookeeperRPC服务分布式系统开发5——整合所有组件分布式系统开发6——项目打包部署与Nginx代理前端前序文章windows下RabbitMQ的使用(1)——下载与安装windows下RabbitMQ的使用(2)——安装插件与创建队列按照上文先启动RabbitMQ并创建一个简单队列名为 testMQ 后文用到了这个队列如果你有自己的队列名后文对应替换就行。本文在上文分布式系统开发2——Redis 缓存与分布式锁的基础上创建本模块。版本IDEA :2026.1JDK:17maven:3.9.xrabbitMQ:4.3.x1.创建模块右击父模块点击“新建然后选择“模块”模块名为 ds-rabbit构建系统选Maven这里JDK选17然后选 创建。创建完后想结构如下2.增加依赖点击当前模块ds-rabbit模块的依赖文件pom.xml然后增加下面的依赖dependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-amqp/artifactId/dependency/dependencies增加完以后注意刷新一下更新一下依赖。3. 新增配置文件还是遵循“谁用谁配置”的原则本模块会写关于rabbitMQ的配置最后整合的时候会删除这些配置。右击当前模块的resources文件夹选择“新建”然后选择“文件”文件名为application.yml配置文件参考如下server:port:8083spring:rabbitmq:host:localhostport:5672username:guestpassword:guestvirtual-host:/注意这里的用户名、密码、端口号和你实际的rabbitMQ的配置一样。4.新增配置类右击当前模块main文件夹下的java文件夹选择“新建”然后选择 “软件包”软件包名为com.guo.mq.config创建完后继续右击config文件夹选择“新建”然后选择“Java类”类名为:RabbitMQConfig类的参考代码如下packagecom.guo.mq.config;importorg.springframework.amqp.core.*;importorg.springframework.context.annotation.Bean;importorg.springframework.context.annotation.Configuration;ConfigurationpublicclassRabbitMQConfig{// 统一队列名publicstaticfinalStringHELLO_QUEUEtestMQ;publicstaticfinalStringEXCHANGEdemo.exchange;publicstaticfinalStringROUTING_KEYdemo.routing;BeanpublicQueuehelloQueue(){// 简单持久化关闭、hello 标准模式returnnewQueue(HELLO_QUEUE,false);}BeanpublicDirectExchangeexchange(){returnnewDirectExchange(EXCHANGE);}BeanpublicBindingbinding(Queuequeue,DirectExchangeexchange){returnBindingBuilder.bind(queue).to(exchange).with(ROUTING_KEY);}}注意HELLO_QUEUE后面的跟的队列的名字一定要和你实际的队列名一致。其他两处EXCHANGE 、ROUTING_KEY 本文没有使用只简单配置了。5.新增消费者右击当前模块的mq文件夹选择“新建”然后选择“软件包”包名为com.guo.mq.consumer然后右击刚才创建的consumer文件夹选择“新建”然后选择“Java类”类名为:MessageConsumer参考代码如下packagecom.guo.mq.consumer;importcom.guo.mq.config.RabbitMQConfig;importorg.springframework.amqp.rabbit.annotation.RabbitListener;importorg.springframework.stereotype.Component;ComponentpublicclassMessageConsumer{RabbitListener(queuesRabbitMQConfig.HELLO_QUEUE)publicvoidreceive(Stringmessage){System.out.println(【消费者收到】message);}}6.新增/修改启动类右击当前模块的mq文件夹选择“新建”然后选择“Java类”类名为RabbitMQApplication参考代码如下packagecom.guo.mq;importorg.springframework.boot.SpringApplication;importorg.springframework.boot.autoconfigure.SpringBootApplication;SpringBootApplicationpublicclassRabbitMQApplication{publicstaticvoidmain(String[]args){SpringApplication.run(RabbitMQApplication.class,args);}}7.新增测试代码右击当前模块的测试部分test文件夹下的java文件夹选择“新建”然后选“Java类”类名为RabbitMQAppliactionTests参考代码如下importcom.guo.mq.RabbitMQApplication;importcom.guo.mq.config.RabbitMQConfig;importorg.junit.jupiter.api.Test;importorg.springframework.amqp.rabbit.core.RabbitTemplate;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.boot.test.context.SpringBootTest;SpringBootTest(classesRabbitMQApplication.class)publicclassRabbitMQAppliactionTests{AutowiredprivateRabbitTemplaterabbitTemplate;TestvoidsendHelloMsg()throwsInterruptedException{StringmsgHello World RabbitMQ;rabbitTemplate.convertAndSend(RabbitMQConfig.HELLO_QUEUE,msg);System.out.println(【测试生产者发送完成】msg);}}8.执行测试点击测试代码可以看到向RabbitMQ发送了消息消费者也收到了消息。本文参考代码如1百度网盘通过网盘分享的文件ds-demo(3).zip链接: https://pan.baidu.com/s/1K3I2DSd7cyHy8EB6Iktmzg?pwdakv3 提取码: akv32我用夸克网盘给你分享了「ds-demo(3).zip」点击链接或复制整段内容打开「夸克APP」即可获取。/6aae3b5736链接https://pan.quark.cn/s/3d5866a34d21?pwdN415提取码N415
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

◈

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

◐

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

▲

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。