|
这个版本仍在开发中,尚未达到稳定状态。要使用最新稳定版,请使用 spring-cloud-stream 5.0.1 ! |
绑定抽象<br/>
Spring Cloud Stream 提供了用于连接外部中间件物理目的地的 Binder 抽象。 本节提供了有关 Binder SPI 的主要概念、其主要组件以及实现特定细节的信息。
生产者和使用者
如下图所示,生产者和消费者之间的通用关系:
<p>图 1 生产者与消费者</p>
生产者是任何将消息发送到绑定目标的组件。
绑定目标可以使用为该代理编写的Binder实现绑定到外部消息代理。
调用bindProducer()方法时,第一个参数是代理中的目标名称,第二个参数是要发送消息的本地目标的实例,第三个参数包含要在为此绑定目标创建的适配器中使用的属性(例如分区键表达式)。
消费者是从绑定目标接收消息的任何组件。与生产者一样,消费者可以绑定到外部消息代理。在调用bindConsumer()方法时,第一个参数是目标名称,第二个参数提供逻辑组的名称。由给定目标的使用者绑定表示的每个组都会收到生产者发送到该目标的每条消息(即,它遵循常规发布-订阅语义)。如果有多个具有相同组名的使用者实例绑定,则跨这些使用者实例对发出的消息进行负载平衡,使得生产者发出的每条消息仅由每个组中的单个使用者实例使用(也就是说,它遵循常规排队语义)。