Spring Batch 和 Spring Batch Admin 版本發布

發布 | Michael Minella | 2015 年 1 月 16 日 | ...

我們很高興地宣布今天發布了一系列 Spring Batch 相關版本。現在提供了 Spring Batch 的錯誤修復版本、Spring Batch Admin 的錯誤修復版本以及新版本 Spring Batch Admin 的里程碑版本。

Spring Batch 3.0.3

Spring Batch 3.0.3 代表 Spring Batch 的最新維護版本,解決了許多增強功能和小錯誤修復。 Spring Batch 3.0.3 中的新功能包括

改進了對 JSR-352 自定義基礎架構的支援

在此版本之前,覆蓋 Spring Batch 提供的 JSR-352 配置作業基礎架構的唯一方法是在作業的上下文中包含配置。 這阻止了為真正共享的組件配置全局覆蓋的能力。 使用 3.0.3,您現在可以通過系統屬性指定 Spring 配置的位置,該屬性可以覆蓋現有的基礎架構。

用於分割結果的可選輪詢

使用遠程分區時,主節點需要一種方法來通知從節點分區已完成其工作。 從歷史上看,這是通過每個從節點回覆主節點來完成的,結果被彙總,然後通知主節點所有從節點已完成。 但是,這需要額外的配置,而這可能是不必要的。 由於分區作業中的從節點將其狀態維護在與主節點相同的作業存儲庫中,因此主節點可以只輪詢作業存儲庫,以查看從節點是否完成。 此版本增加了配置MessageChannelPartitionHandler以輪詢作業存儲庫而不是等待響應消息的功能。 您可以在 MessageChannelPartitionHandler 的文檔中閱讀有關此新功能的配置的更多信息。

這不是完整的更新列表,但突出顯示了主要的新功能。 您可以在 Spring Batch 的 Jira 問題跟踪器中查看具體更改:https://jira.spring.io/browse/BATCH/

Spring Batch Admin

1.3.1

我們今天提供的兩個 Spring Batch Admin 版本中的第一個是 Spring Batch Admin 1.3 系列的第一個維護版本。 此版本解決了許多小錯誤,其列表可以在 Jira 中找到:https://jira.spring.io/browse/BATCHADM/

2.0.0.M1

去年在 SpringOne2GX 上我收到的最大問題是“Spring Batch Admin 的情況如何?” Spring Batch Admin 在 7 月(去年 SpringOne2GX 之前不久)進行了最後一次更新,但並不是很大的功能升級。 發布它是為了更新依賴項並解決一些錯誤。 從那以後,我們一直在努力更新許多功能,以使 Spring Batch Admin 保持最新。 今天,我們宣布朝著這個目標邁出的第一個里程碑。

JSR-352 支援

Spring Batch Admin 作為 2.0.0.M1 版本的一部分,現在將支援 JSR-352 配置的作業。 通過按照規範的要求將基於 XML 的配置放在 /META-INF/batch-jobs 目錄中,Spring Batch Admin 將加載該作業,以便可以通過 REST 端點和當前 UI 啟動。 Spring Batch Admin 提供的所有監控方面(查看執行、啟動/停止/重新啟動等)都可用。

Java 配置支援

隨著 Spring 社區內部從基於 XML 的配置轉向基於 Java 的配置,Spring Batch Admin 也緊跟步伐。 從此版本開始,Spring Batch Admin 支援配置要掃描以尋找 Java 配置的 Spring Batch 作業的包。 與任何其他批次作業一樣,這些作業將被加載並可用於執行,就像它們的 XML 對應項一樣。

重要的是要注意,雖然 Spring Batch Admin 現在支援基於 Java 的配置,但您不會希望將 @EnableBatchProcessing 與之一起使用。 這是因為 @EnableBatchProcessing 提供了一系列基礎架構,這些基礎架構已經由 Spring Batch Admin 開箱即用。 通過 Java 配置配置作業以在 Spring Batch Admin 中使用與您使用 @EnableBatchProcessing 完全相同...而無需使用該註解。 您仍然可以像通常一樣自動裝配 JobBuilderFactoryStepBuilderFactory

REST 端點更新

作為 Spring XD 團隊在其管理 UI 中所做工作的一部分,他們創建了一組全新的批次相關 REST 端點。 此版本將這些端點遷移到 Spring Batch Admin 中供所有人使用。 在 /batch 路徑下,存在一組端點,它們提供與現有 REST API 類似的功能,但功能更強大。 新的 API 遵循 HATEOAS 原則,允許 API 發現和遍歷。 雖然對 HATEOAS 的支持仍在進行中,但此版本提供了我們對此發展方向的展望。

Spring Batch Admin 的未來

像所有 Spring 項目一樣,我們努力使事物在合理的情況下向後兼容。 因此,Spring Batch Admin 2.0 正在進行一些重大更改,以便將來實現向後兼容性。 這些更改包括刪除“官方” UI,以及棄用舊版本的 REST API。 此版本不包含任何這些更改。 這些更改將在 Spring Batch Admin 2.0 正式發布之前到來。 我們希望公開透明地了解項目的方向。

過去幾年來,任何關注 UI 領域變化速度的人都可以迅速辨別出,選擇一種現代前端技術並能夠在可預見的將來保持向後兼容性目前是不可能的。 破壞性變更的速度現在太快了。 在將這一點納入我們希望在相關領域的最前沿提供工具的願望時,我們已決定將 UI 作為項目的正式部分刪除。 也就是說,我們仍然理解客戶端是 Spring Batch Admin 帶來的重要組成部分。 因此,我們的計劃是提供一系列示例項目,以展示幾種不同的客戶端選項。 這將使我們能夠獨立於核心框架/API 發展客戶端選項,而不會阻止我們向後兼容。

我們還將棄用舊版本的 REST API。 新的 API 在 REST API 成熟度模型中向前邁出了一步,從基於 HTTP 的基本 CRUD 轉變為支援真正的資源。 雖然新的 REST 端點仍在開發中,但一旦它們的功能完善,我們將棄用舊的端點,以便將開發精力集中在改進和發展新集合上。

我們接下來的發展方向

我們將繼續致力於上述更改,並且目前計劃在今年第二季度初發布另一個版本。 我們對 Spring Batch Admin 的未來感到興奮,並期待您在 JiraGithubStackOverflow 和社交媒體上的反饋!

獲取 Spring 新聞稿

通過 Spring 新聞稿保持聯繫

訂閱

領先一步

VMware 提供培訓和認證,以加速您的進展。

了解更多

獲得支持

Tanzu Spring 在一個簡單的訂閱中提供對 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二進制文件。

了解更多

即將舉行的活動

查看 Spring 社區中所有即將舉行的活動。

查看全部