領先一步
VMware 提供培訓和認證,以加速您的進度。
瞭解更多我們很高興宣布 Spring Cloud Stream Ditmars 版本系列的正式發布。
Spring Cloud Stream Ditmars.RELEASE 可在 Spring Release 儲存庫中使用。發佈說明包含與 Spring Boot、Spring Cloud、Spring AMQP 和 Spring for Apache Kafka 的版本相容性相關的資訊。
以下各節列出了此版本中包含的新功能。
Spring Cloud Stream 自動化了探索和自動設定,並提供了一種簡單的方法來促進應用程式業務邏輯與 Apache Kafka 之間的互動。由於大多數標準的訊息代理特定的設定都公開為 Spring Boot 屬性,因此可以輕鬆使用和覆寫以適應業務需求。
為了進一步增強 Apache Kafka 整合,Kafka Streams 整合已提升為 Apache Kafka 繫結器實作中的頂級結構。
由於 Kafka Streams API 已內建於框架中,因此簡單和更複雜的資料處理功能都可以建置為 Spring Boot 應用程式。您只需要 classpath 中的 spring-cloud-stream-binder-kstream
依賴項 - 就可以輕鬆開始。此整合包括分區級別的本機狀態,以進一步簡化事件驅動處理器、資料聚合器、連續查詢和轉換的解決方案。
以下螢幕截圖顯示了它的實際操作。
應客戶和社群的廣泛要求,我們增加了對 Apache Kafka 0.11 的支援。雖然今天支援它,但我們尚未在此版本中將其切換為預設版本。0.11 將成為即將發佈的 2.0.0.RELEASE 中的預設版本。因此,對於有興趣升級到此版本的早期採用者,我們已將其發佈為獨立構件。
透過 @hekonsek 的貢獻,新增了一個指標,有助於進行消費者延遲鑑識。 這對於涉及是否根據動態流量模式自動擴展消費者的情況非常有用。
如果需要減少 I/O 足跡,現在 RabbitMQ 繫結器實作中支援「Lazy Queues」。同樣,也提供對「Lazy Queues」的 DLQ 支援。
RabbitMQ 的典型橫向擴充設置涉及一組連接到前端負載平衡器的 RabbitMQ 節點。節點發生故障時,為了接受並恢復它,現在有一個修復程式可透過重試最終恢復。
為了避免當共用連線被繁忙的生產者封鎖時消費者發生死鎖,此版本增加了對非交易生產者的獨立連線工廠的支援。
社群驅動的適用於 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 之前達到穩定的發佈候選狀態。 我們對正在進行的工作感到興奮!
最後,各種錯誤修復和改進是該版本的一部分。 有關更多詳細資訊,請參閱發佈說明中的專案層級版本標記。
與往常一樣,我們歡迎回饋和貢獻,因此請在Stackoverflow 或GitHub 上或透過Gitter 與我們聯繫。