Spring Cloud Stream 是一个用来为微服务应用构建消息驱动能力的框架。 它可以基于Spring Boot 来创建独立的、 可用于生产的 Spring 应用程序。 它通过使用 Spring Integration 来连接消息代理中间件以实现消息事件驱动。 Spring Cloud Stream 为一些供应商的消息中间件产品提供了个性化的自动化配置实现,并且引入了发布-订阅、 消费组以及分区这三个核心概念。 简单地说, Spring Cloud Stream 本质上就是整合了 Spring Boot 和 SpringIntegration, 实现了一套轻量级的消息驱动的微服务框架。到目前为止,SpringCloud Stream 只支持下面两个著名的消息中间件的自动化配置:
- RabbitMQ
- Kafka
快速入门
pom.xml 中的依赖关系
<parent> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-parent</artifactid> <version>l.3.7.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <dependencies> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-web</artifactid> </dependency> <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-boot-starter-test</artifactid> <scope>test</scope> </dependency> <dependency> <groupid>org.springframework.cloud</groupid> <artifactid>spring-cloud-starter-stream-rabbit</artifactid> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupid>org.springframework.cloud</groupid> <artifactid>spring-cloud-dependencies</artifactid> <version>Brixton.SRS</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
创建用于接收来自 RabbitMQ 消息的消费者 SinkReceiver
@EnableBinding{Sink.class) public class SinkReceiver { private static Logger logger = LoggerFactory. getLogger (HelloApplication. class}; @StreamListener(Sink.INPUT) public void receive(Object payload) { logger.info("Received: " + payload); } }
原文地址:https://www.cnblogs.com/hzzjj/p/10291627.html
时间: 2024-10-02 21:00:48