|
该版本仍在开发中,尚未被视为稳定。对于最新稳定版本,请使用 spring-cloud-stream 5.0.0! |
Binder SPI
Binder SPI 由多个接口、开箱即用的工具类和发现策略组成,这些策略为连接外部中间件提供了可插拔的机制。
SPI的关键点是粘结 剂接口,这是一种将输入和输出连接到外部中间件的策略。以下列表展示了粘结 剂接口:
public interface Binder<T, C extends ConsumerProperties, P extends ProducerProperties> {
Binding<T> bindConsumer(String bindingName, String group, T inboundBindTarget, C consumerProperties);
Binding<T> bindProducer(String bindingName, T outboundBindTarget, P producerProperties);
}
界面具有参数化,提供若干扩展点:
-
输入和输出绑定目标。
-
扩展了消费者和生产者的属性,允许特定的Binder实现添加可以以类型安全方式支持的补充属性。
典型的绑定器实现包括以下内容:
-
一个实现
粘结 剂接口; -
一个泉水
@Configuration创建 类型的 bean 的类粘结 剂还有中间件连接基础设施。 -
一个
META-INF/spring.binders在类路径上找到的文件,包含一个或多个绑定器定义,如下示例所示:kafka:\ org.springframework.cloud.stream.binder.kafka.config.KafkaBinderConfiguration
如前所述,Binder 抽象也是该框架的扩展点之一。所以如果你在前面的列表里找不到合适的绑定器,你可以在Spring Cloud Stream上自己实现绑定器。
在“如何从零开始创建春季云直播活页夹”帖子中,一位社区成员记录了相关内容
详细说明,并举例说明实现自定义绑定器所需的一系列步骤。
步骤也在实现自定义绑定器部分。 |