Spring Cloud Stream 1.3 正式釋出

工程 | Vinicius Carvalho | 2017年10月06日 | ...

我們很高興地宣佈 Spring Cloud Stream Ditmars 釋出列車正式釋出。

Spring Cloud Stream Ditmars.RELEASE 可在 Spring 釋出倉庫中使用。釋出說明包含有關與 Spring Boot、Spring Cloud、Spring AMQP 和 Spring for Apache Kafka 版本相容性的相關資訊。

以下章節列出了此版本中包含的新功能。

Apache Kafka

Apache Kafka 的 Kafka Streams

Spring Cloud Stream 實現了自動化發現和自動配置,它提供了一種簡單的方法來促進應用程式業務邏輯與 Apache Kafka 之間的互動。透過將大多數標準訊息代理特定設定作為 Spring Boot 屬性公開,它易於使用和覆蓋以適應業務需求。

為了進一步增強 Apache Kafka 整合,Kafka Streams 整合已被提升為 Apache Kafka 繫結器實現中的頂級結構。

得益於框架中內建的 Kafka Streams API,簡單和更復雜的資料處理功能都可以作為 Spring Boot 應用程式構建。您所需要的只是類路徑中的 spring-cloud-stream-binder-kstream 依賴項 - 就是這麼容易上手。此整合包括分割槽級別的本地狀態,以進一步簡化事件驅動處理器、資料聚合器、連續查詢和轉換的解決方案。

以下截圖顯示了它的實際應用。

Apache Kafka 0.11

應客戶和社群的普遍要求,我們添加了對 Apache Kafka 0.11 的支援。儘管目前已支援,但在此版本中我們尚未將其設為預設值。0.11 將在即將釋出的 2.0.0.RELEASE 中成為預設值。因此,對於有興趣升級到此版本的早期採用者,我們將其釋出為獨立工件

消費者滯後指標

藉助 @hekonsek 的貢獻,新增了一個指標,有助於消費者滯後分析。這對於根據動態流量模式是否自動擴縮消費者的情況很有幫助。

RabbitMQ

延遲佇列

如果減少 I/O 足跡是要求,現在 RabbitMQ 繫結器實現中支援“延遲佇列”。同樣,也支援“延遲佇列”的 DLQ。

彈性重試

RabbitMQ 的典型橫向擴充套件設定涉及透過負載均衡器連線的一組 RabbitMQ 節點。當節點發生故障時,為了應對並恢復,現在已透過重試機制實現最終恢復的修復。

獨立連線工廠

為了避免當共享連線被繁忙的生產者阻塞時消費者出現死鎖,此版本增加了對非事務性生產者使用獨立連線工廠的支援。

Amazon Kinesis(孵化中)

社群驅動的 Amazon Kinesis 繫結器實現取得了顯著進展;然而,由於 Spring Cloud 專案生態系統的上游依賴項,它未能趕上 Ditmars 釋出列車。我們希望繼續保持這一勢頭,並在即將到來的 2.0.0 里程碑中使 kinesis-binder 畢業。我們要感謝我們的社群冠軍 Peter Oates (@oatesp) 和 Jacob Severson (@JacobASeverson) 貢獻的寶貴時間和高質量的成果。

錯誤處理

Ditmars 釋出列車重新審視了核心框架中的錯誤處理支援。我們簡化了生產者和消費者級別的異常處理。例如,有一個錯誤通道 (<destination>.errors) 可以接收失敗訊息的副本,並且全域性的 Spring Integration errorChannel 仍然可用。錯誤通道的建立、編排和全域性表示都在此釋出列車中。

#Spring Cloud Stream 2.0

1.3 版本標誌著 1.x 系列和 Boot 1.5 的最後一次迭代。下一個主要釋出列車 (Elmhurst) 包括對幾項核心功能的全面大修。正在考慮以下主題:Spring Boot 2.0 相容性、更好的內容型別解析、進一步簡化的錯誤處理體驗以及更智慧的繫結生命週期鉤子(用於啟動、停止和暫停消費者)。這正在積極開發中,我們希望在 SpringOne Platform 2017 之前達到穩定的候選釋出狀態。我們對正在進行的工作感到興奮!

最後,各種錯誤修復和改進也是此版本的一部分。有關更多詳細資訊,請參閱發行說明中專案級別的釋出標記。

一如既往,我們歡迎反饋和貢獻,因此請透過 StackoverflowGitHubGitter 與我們聯絡。

獲取 Spring 新聞通訊

透過 Spring 新聞通訊保持聯絡

訂閱

領先一步

VMware 提供培訓和認證,助您加速進步。

瞭解更多

獲得支援

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案,只需一份簡單的訂閱。

瞭解更多

即將舉行的活動

檢視 Spring 社群所有即將舉行的活動。

檢視所有