Spring Batch 5.1.0-M2、5.0.3 和 4.3.9 現已釋出!

釋出 | Mahmoud Ben Hassine | 2023年8月24日 | ...

我很高興地宣佈 Spring Batch 5.1.0-M2、5.0.3 和 4.3.9 現已釋出!版本 5.0.3 和 4.3.9 是補丁版本,包含多項錯誤修復、改進和依賴項更新。您可以在這裡找到每個版本的釋出說明:5.0.34.3.9

這篇博文主要介紹 Spring Batch 5.1 的新里程碑版本,它引入了以下主要特性:

  • 依賴項升級
  • 新的基於遊標的 MongoItemReader
  • MongoItemWriter 中的批次插入支援

有關更改的完整列表,請檢視釋出說明

依賴項升級

此里程碑版本將 Spring 依賴項升級到以下版本:

  • Spring Framework 6.1.0-M4
  • Spring Integration 6.2.0-M2
  • Spring Data 3.2.0-M2
  • Spring LDAP 3.2.0-M2
  • Micrometer 1.12.0-M2

新的基於遊標的 MongoItemReader

直到版本 5.0,Spring Batch 提供的 MongoItemReader 使用分頁方式,該方式基於 MongoDB 的 skip 操作。雖然這對於小型/中型資料集效果良好,但對於大型資料集來說效能開始變差。

此版本引入了 MongoCursorItemReader,這是一款用於 MongoDB 的新型基於遊標的專案讀取器。此實現使用遊標而不是分頁來從 MongoDB 讀取資料,從而提高了讀取大型集合時的效能。

為了與其他基於遊標/分頁的讀取器保持一致,當前的 MongoItemReader 已更名為 MongoPagingItemReader

MongoItemWriter 中的批次插入支援

直到版本 5.0,MongoItemWriter 支援兩種操作:upsertdelete。雖然 upsert 操作對於插入和更新都效果良好,但對於已知在目標集合中為新專案的情況,其效能表現不佳。

類似於 JpaItemWriter 中的 persistmerge 操作,此版本在 MongoItemWriter 中添加了一個名為 insert 的新操作,該操作專為批次插入而設計。對於新專案而言,此新選項比 upsert 表現更好,因為它不需要額外的查詢來檢查專案是否已存在於目標集合中。

下一步是什麼?

分享您的反饋!

首先,我要感謝所有為這些釋出做出貢獻的貢獻者!您可以將 Spring Batch 5.1.0-M2 與 Spring Boot 3.2.0-M2 一起嘗試。我們計劃於 2023 年 11 月晚些時候釋出 Spring Batch 5.1 GA 版本。

我們期待您在 Github IssuesGithub DiscussionsTwitterStackOverflow 上分享您的反饋。

升級到 Spring Batch 5

我想提醒使用者,Spring Batch 4.3.x 將於 2023 年 11 月 18 日終止開源支援。請儘早考慮將您的應用程序升級到 Spring Batch 5。您可以在這裡找到升級到 v5 的遷移指南。

如果您在將現有應用程式遷移到 Spring Batch 5 時需要幫助,請隨時透過 Github 聯絡 Spring Batch 團隊!

檢視 Spring Academy 上的新 Spring Batch 課程

本週早些時候,我們在 Spring Academy 上釋出了新的 Spring Batch 課程!在本課程中,您將學習如何使用 Spring Batch 和 Spring Boot 構建健壯且容錯的批處理應用程式!請在 Spring Academy 上檢視:使用 Spring Batch 構建批處理應用程式

Spring Batch 主頁|Github 原始碼|參考文件

訂閱 Spring 簡報

訂閱 Spring 簡報,保持聯絡

訂閱

領先一步

VMware 提供培訓和認證,助您加速發展。

瞭解更多

獲得支援

Tanzu Spring 在一個簡單的訂閱中提供對 OpenJDK™、Spring 和 Apache Tomcat® 的支援和二進位制檔案。

瞭解更多

即將舉辦的活動

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

檢視全部