Spring整合Rocketmq


🔥
不同於 RabbitMQ、ActiveMQ、Kafka 等消息中間件,Spring 社區已經通過多種方式提供了對這些中間件產品集成,例如通過 spring-jms 整合 ActiveMQ、通過 Spring AMQP 項目下的 spring-rabbit 整合 RabbitMQ、通過 spring-kafka 整合 kafka ,通過他們可以在 Spring 項目中更方便使用其 API 。目前在 Spring 框架中集成 RocketMQ 有三種方式,是將消息生產者和消費者定義成 bean 對象交由 Spring 容器管理,是使用 RocketMQ 社區的外部項目 rocketmq-jms(https://github.com/apache/rocketmq-externals/tree/master/rocketmq-connect-jms)然后通過 spring-jms 方式集成使用,https://github.com/apache/rocketmq-spring是如果你的應用是基於 spring-boot 的,可以使用 RocketMQ 的外部項目 rocketmq-spring-boot-starter(https://github.com/apache/rocketmq-spring)比較方便的收發消息。

總的來講 rocketmq-jms 項目實現了 JMS 1.1 規范的部分內容,目前支持 JMS 中的發布/訂閱模型收發消息。

這種方式不推薦使用,不夠靈活。

所以

如果整合spring,推薦使用第一種方式,相對靈活,自由度高。

如果是sprinboot,就更方便了。官方提供了Rocket-Spring項目用於將Rocketmq整合進Springboot

支持以下功能特性:


  • 同步發送
  • 異步發送
  • one-way發送
  • 發送順序消息
  • 批量發送
  • 發送事務消息
  • 發送延遲消息
  • 並發消費(廣播/集群)
  • 順序消費
  • 支持消息過濾(使用tag/sql)
  • 支持消息軌跡
  • 認證和授權
  • request-reply模式

官方地址:https://github.com/apache/rocketmq-spring/wiki

官方手冊非常清晰。



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM