SpringCloudStream概述
Spring Cloud对Spring Cloud Stream(简称SCS)的定位是用于构建高度可扩展的基于事件驱动的微服务,其目的是简化消息在Spring Cloud应用程序中的开发。同时SCS能够提供一套灵活可扩展的编程模型,在Spring的基础上,支持发布/订阅模型、消费者分组、数据分片等。使用SCS能使微服务基于消息驱动的开发模式更加简单透明。 SCS的架构 SCS可以简单地理解为是对第三方消息中间件的一个概念封装,开发人员可以将关注点从消息中间件的特性配置转移到对消息的配置。 下面是一个简单的架构图。
● Middleware:消息中间件,如RabbitMQ、Kafka、RocketMQ等。 ● Binder:可以认为是适配器,用来将Stream与中间件连接起来,不同的Binder对应不同的中间件,需要我们配置。 ● Application:由Stream封装的消息机制,很少自定义开发。 ● Inputs:输入,可以自定义开发。 ● Outputs:输出,可以自定义开发。 如果将SCS架构从消息层面做进一步细化,则可以分为三个模块,如下图所示。
SCS的核心模块
● Source 当服务发布消息前的前置业务完成后会通过