領先一步
VMware 提供培訓和認證,助您加速進步。
瞭解更多我很高興代表團隊宣佈 Spring Cloud Stream Chelsea.RC1 的釋出。Spring Cloud Stream Chelsea.RC1 可在 Spring Milestone 倉庫中使用,其功能的詳細描述可在參考文件中找到。有關工件和完整更改列表的資訊,請查閱釋出說明。
以下是新版本帶來的主要新功能和改進摘要
我們增加了對基於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應用程式中的流量監控提供了第一類支援。
模式支援的新功能包括模式搜尋和客戶端級別快取,後者顯著提高了序列化支援的效能。
RabbitMQ繫結器現在支援自定義目的地型別及其屬性,包括對直接交換機和訊息TTL設定的支援。
從這個版本開始,Spring Cloud Stream引入了一個新的Provisioning SPI,它抽象了目標代理上目的地(主題、交換機、佇列)的建立和配置。這使得基礎設施管理和繫結器的訊息傳遞方面能夠更好地分離關注點。
在接下來的幾周裡,我們將專注於錯誤修復和文件/示例改進,為GA版本做準備。
除此之外,我們未來的路線圖還包括以下幾項內容:
在Chelsea.RELEASE之後:釋出一些配套整合(不屬於釋出列車,但與核心支援整合,目標是將來納入釋出列車)
JMS繫結器,原生支援Active MQ;
升級Google Pub Sub繫結器的客戶端庫;
基於現有概念驗證的Reactive Streams繫結器;
基於現有概念驗證的Kafka Streams繫結器;
在未來的Chelsea服務版本中:錯誤處理和DLQ管理方面的改進;
我們還計劃開始Spring Cloud Stream 2的工作,以支援Spring 5和Spring Integration 5。
我要感謝所有參與者的支援。特別是,我要特別感謝透過提出問題或提供補丁為本次釋出做出貢獻的社群成員:
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活動即將舉行,就在您附近:
搶購門票或提交演講!