最近在对公司开发框架进行优化,框架内涉及到多处入库的日志记录,例如登录日志/操作日志/访问日志/业务执行日志,集成在业务代码中耦合度较高且占用业务操作执行时间,所以准备集成相关消息队列进行代码解耦
方案规划现有的成熟消息队列组件非常多,例如RabbitMQ,ActiveMQ,Kafka等,考虑到业务并发量不高且框架已经应用于多个项目平稳运行,准备提供基于Redis的消息队列和集成ActiveMQ两种方案,Redis消息队列的好处是无需额外安装部署存量项目可平稳过度但消息无法持久化可能丢失,ActiveMQ解决方案成熟可以保证消息持久化但是需要实施人员额外掌握操作部署
统一设计增加自定义配置指定消息队列方式
定义消息传输统一模型
定义标准消息处理接口
定义统一对外发送消息工具类
集成Redis消息队列pom配置
连接配置
spring: redis: host: localhost port: 6379 password:
操作工具类
消息处理
配置注册
集成ActiveMQ消息队列pom配置
注意:jdk1.8对应版本5.15.0
连接配置
spring: activemq: broker-url: tcp://127.0.0.1:61616 #MQ服务器地址 user: admin password: admin pool: enabled: true
消息处理
配置注册
使用示例消息处理
发送消息
到此这篇关于详解SpringBoot集成消息队列的案例应用的文章就介绍到这了,更多相关SpringBoot消息队列内容请搜索七叶笔记以前的文章或继续浏览下面的相关文章希望大家以后多多支持七叶笔记!