SpringCloud 類路徑上的多個Binders

2023-11-27 11:31 更新

當(dāng)類路徑上存在多個綁定程序時,應(yīng)用程序必須指示將哪個綁定程序用于每個通道綁定。每個活頁夾配置都包含一個META-INF/spring.binders文件,它是一個簡單的屬性文件,如以下示例所示:

rabbit:\
org.springframework.cloud.stream.binder.rabbit.config.RabbitServiceAutoConfiguration

其他提供的活頁夾實(shí)現(xiàn)(例如Kafka)也存在類似的文件,并且期望自定義活頁夾實(shí)現(xiàn)也將提供它們。關(guān)鍵字表示綁定程序?qū)崿F(xiàn)的標(biāo)識名,而該值是逗號分隔的配置類列表,每個配置類都包含一個且僅一個bean類型為org.springframework.cloud.stream.binder.Binder的定義。

可以使用spring.cloud.stream.defaultBinder屬性(例如,spring.cloud.stream.defaultBinder=rabbit)在全局上執(zhí)行Binder選擇,也可以通過在每個通道綁定上配置活頁夾來分別進(jìn)行Binder選擇。例如,從Kafka讀取并寫入RabbitMQ的處理器應(yīng)用程序(具有分別名為inputoutput的通道用于讀取和寫入)可以指定以下配置:

spring.cloud.stream.bindings.input.binder=kafka
spring.cloud.stream.bindings.output.binder=rabbit
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號