结合剂抽象

Spring Cloud Stream 提供了一个 Binder 抽象,用于连接外部中间件的物理目的地。本节介绍了 Binder SPI 背后的主要概念、主要组件以及实现特定的细节。spring-doc.cadn.net.cn

生产者与消费者

下图展示了生产者与消费者的一般关系:spring-doc.cadn.net.cn

生产者、消费者
图1。生产者与消费者

生产者是将消息发送到绑定目的地的任何组件。绑定目的地可以绑定到带有粘结 剂实现该中介。当调用bindProducer()方法中,第一个参数是代理内目的地的名称,第二个参数是本地目的地实例,生产者向其发送消息,第三个参数包含属性(如分区键表达式),用于为该绑定目的地创建的适配器中。spring-doc.cadn.net.cn

消费者是接收来自绑定目的地消息的任何组件。与生产者类似,消费者也可以绑定到外部消息代理。调用bindConsumer()方法中,第一个参数是目的名称,第二个参数则是逻辑消费者组的名称。每个由消费者绑定表示的目标组都会收到生产者发送到该目的地的每条消息的副本(即遵循正常的发布-订阅语义)。如果有多个使用相同组名绑定的消费者实例,则消息会在这些消费实例间进行负载均衡,使得每个生产者发送的消息只被组内的单个消费者实例消耗(即遵循正常的队列语义)。spring-doc.cadn.net.cn