領先一步
VMware 提供培訓和認證,以加速您的進展。
了解更多我謹代表團隊,很高興宣布 Spring Cloud Stream Chelsea.RC1 的發布。Spring Cloud Stream Chelsea.RC1 可在 Spring Milestone 儲存庫 中使用,其功能的詳細說明可在參考文件中找到。如需關於 artifacts 和完整變更列表的資訊,請查閱發行說明。
以下是新版本帶來的主要新功能和改進摘要
我們新增了支援,根據基於 SpEL 的條件,將訊息分派到輸入通道上註冊的多個 @StreamListener 方法。這為編寫訊息驅動的微服務帶來更大的彈性,特別是在 DDD/ES/CQRS 情境中,不同類型的事件可以直接分派到其處理方法。
@EnableBinding(Sink.class)
@EnableAutoConfiguration
public static class {
@StreamListener(target = Sink.INPUT, condition = "headers['type']=='customer'")
public void handleCustomerEvent(@Payload CustomerEvent customerEvent) {
// handle the message
}
@StreamListener(target = Sink.INPUT, condition = "headers['type']=='order'")
public void handleOrderEvent(@Payload OrderEvent orderEvent) {
// handle the message
}
}
Spring Cloud Stream 新增了一個額外的模組,可以在專用通道上匯出 Spring Boot 指標。您現在只需在類別路徑上新增模組,並依照參考文件中的說明提供目標目的地,即可從您的應用程式收集指標。預設情況下,該模組匯出 Spring Integration 指標(包括綁定通道指標),但也可以新增其他指標。這為 Spring Cloud Stream 應用程式中的流量監控提供一流的支援。
Schema 支援的新功能包括 schema 搜尋和用戶端層級快取,後者為序列化支援帶來顯著的效能提升。
RabbitMQ binder 現在支援自訂目的地類型及其屬性,包括支援 Direct Exchanges 和訊息的 TTL 設定。
從此版本開始,Spring Cloud Stream 引入了新的佈建 SPI,抽象化目標代理程式上目的地(主題、交換器、佇列)的建立和配置。這允許基礎架構管理和 binder 的訊息傳遞方面之間更好地分離關注點。
在接下來的幾週內,我們將專注於錯誤修復和文件/範例改進,為 GA 版本的發布做準備。
除此之外,以下是我們未來路線圖中的一些項目
在 Chelsea.RELEASE 之後:發布許多配套整合(不是發布列車的一部分,但與核心支援整合,目標是在未來包含在發布列車中)
具有 Active MQ 原生支援的 JMS binder;
升級 Google Pub Sub binder 的用戶端程式庫;
基於現有 概念驗證 的 Reactive Streams-based binders;
基於現有 概念驗證 的 Kafka Streams binder;
在未來 Chelsea 服務版本中:錯誤處理和 DLQ 管理的改進;
我們也計劃開始 Spring Cloud Stream 2 的工作,以支援 Spring 5 和 Spring Integration 5。
我要感謝所有參與者的支持。特別是,我要特別感謝透過提出 issue 或提供修補程式而為此版本做出貢獻的社群成員
Donovan Muller (@donovanmuller)
Nicholas Byl (@nbyl)
Maxim Kirilov (@maximkir)
唐睿 (@tangrui)
Jose A. Iñigo (@codependent)
Dennis Melzer (@sirwayne)
Wallace Wadge (@wwadge)
Barry Commins (@barrycommins)
Reda Alaoui(@reda-alaoui)
與往常一樣,歡迎所有貢獻,社群支援是我們成功的基石!您可以透過 GitHub、Stack Overflow、Gitter 或 Twitter(主題標籤 #Stream 或 #SpringCloudStream)與我們保持聯繫。
最後但並非最不重要的一點,一系列由社群為社群舉辦的 Spring 活動即將在您附近舉行
立即搶票或提交演講!