在雲端部署和擴充套件 Spring Batch – 具有自適應成本控制

工程 | Josh Long | 2024 年 5 月 21 日 | ...

2024 年 5 月 21 日,太平洋標準時間上午 9 點

您現在可以使用 Azure Spring Apps 有效地執行 Spring Batch 應用程式,並具有自適應成本控制。您只需在批次作業執行時付費,並且無需任何程式碼更改即可輕鬆地將 Spring Batch 作業“提升並遷移”。

Spring Batch 是一個用於處理 Java 應用程式中大量資料的框架。它提供了可重用的函式,用於日誌記錄、事務管理、作業統計、作業重啟、跳過錯誤和資源管理。它還透過最佳化和分割槽支援高效能任務。Spring Batch 於 2008 年 3 月推出,在 Java 開發人員中很受歡迎,是 Spring 專案組合的一部分。它廣泛應用於現代企業系統中,以高效處理複雜的批次處理任務。

在雲端執行 Spring Batch 作業面臨著多項挑戰

  • 可擴充套件性:確保批次作業能夠有效擴充套件以處理大量資料。
  • 成本管理:透過僅在作業執行時為資源付費來控制成本。
  • 作業生命週期管理:管理批次作業的生命週期,包括排程、監控以及作業失敗時的重啟。
  • 基礎設施管理:處理執行批次作業所需的基礎設施,例如伺服器和儲存。
  • 安全性:保護批次作業及其處理的資料。
  • 監控:為作業效能和錯誤設定有效的監控和日誌記錄。

再次強調,您現在可以使用 Azure Spring Apps 有效地執行 Spring Batch 應用程式,並具有自適應成本控制

  • 您只需在批次作業執行時付費。
  • 您無需任何程式碼更改即可輕鬆地將 Spring Batch 作業“提升並遷移”。

我們正在宣佈 Azure Spring Apps 中作業的公開預覽版,使您能夠部署和擴充套件 Spring Batch 應用程式,而無需擔心作業的可擴充套件性、成本控制、生命週期、基礎設施、安全性和監控。這使得利用雲的靈活性和可擴充套件性,高效地處理大規模資料變得更加容易。

Azure Spring Apps 中的作業介紹

Azure Spring Apps 中的作業是具有有限生命週期的任務——它們啟動、執行處理並在完成後退出。每次作業執行通常處理一個工作單元,可以執行幾分鐘到幾小時,並且可以同時執行多個執行。示例包括按需執行的批處理過程和計劃任務——這非常適合資料處理、機器學習、為 AI 應用程式構建智慧以及任何需要按需處理的場景。此功能使開發人員能夠有效地管理和擴充套件其應用程式中的任務,從而確保在雲環境中實現最佳化的效能和資源利用。

Azure Spring Apps 中的作業使您能夠在您的環境中執行容器化的、執行至完成的任務。它們將支援三種觸發型別

  • 手動:由使用者或應用程式按需觸發。
  • 計劃:按重複計劃執行。
  • 事件:由事件觸發,例如佇列中的訊息,可用於 CI/CD 流水線構建代理。

目前,公開預覽版支援手動觸發器。我們的工程團隊正在積極開發對計劃和基於事件的觸發器的支援,這些觸發器將很快推出。這種持續開發確保您能夠充分利用 Azure Spring Apps 的靈活性和強大功能來滿足您所有的批次處理需求。

作業與您的 Spring 應用程式共享相同的環境,從而實現網路和儲存等共享資源。您可以像在 Azure Spring Apps 中管理您的 Spring 應用程式一樣,建立和管理作業,使用 Azure Key Vault 繫結金鑰,保護通訊,並監控作業。您可以結合使用作業和應用程式來構建強大的解決方案。

透過 3 個簡單步驟部署 Spring Batch 作業

您可以透過 3 個簡單步驟部署 Spring Batch 作業

  • 建立作業
$ az spring job create --name generate-monthly-statements
  • 部署 Spring Batch 作業
$ az spring job deploy --name generate-monthly-statements \

--artifact-path target/generate-monthly-statements.jar
  • 啟動作業
$ az spring job start --name generate-monthly-statements

透過這些簡單的步驟,您可以快速在 Azure Spring Apps 上部署和執行您的 Spring Batch 作業。

利用 Spring Batch 作業的自適應成本控制實現成本效益和簡單性

讓我們用一個示例來解釋自適應成本控制。假設您有一個 Spring Batch 作業需要 8 個 vCPU 和 16 GB 記憶體。通常,您會使用更大的虛擬機器,例如 Azure 虛擬機器 D16v5,每月成本約為 572 美元。即使您每天只執行作業 2 小時,您仍然需要支付整個月的費用,並處理作業系統、軟體包、JDK 和 APM 的維護。

使用 Azure Spring Apps,您只需為作業的執行時分配 8 個 vCPU 和 16 GB 記憶體,例如每月執行 60 小時。這樣每月成本約為 45 美元,而且所有底層基礎設施維護(作業系統、軟體包、JDK 和 APM)都由 Azure Spring Apps 為您處理。這既降低了基礎設施成本,也減輕了您的開發人員和平臺工程師所需的工作量。這種方法被稱為自適應成本控制。

部署 Spring Batch 作業並分享您的反饋

Azure Spring Apps 提供了簡單性和生產力,您可以利用 Spring 專家讓您的專案更加成功。您可以輕鬆地將您的 Spring 和多語言應用程式(以及現在支援的 Spring Batch 作業)部署到雲端並快速執行。這是一條通往生產環境的“黃金路徑”,可簡化部署過程並最佳化資源使用。我們將繼續創新工具和最佳化服務,以便大規模簡化 Spring 應用程式向雲端的遷移,並更高效、更經濟地執行這些 Spring 應用程式——更快、更便宜、更好。

最棒的是什麼?我們在所有層級都提供免費的每月贈額——每層級 50 個 vCPU 小時和 100 GB 小時。這是在任何使用量計費之前,您獲得的免費小時數,讓您有機會免費試用該服務。

還在等什麼?立即利用我們的免費每月贈額,將您的第一個 Spring Batch 作業部署到 Azure Spring Apps!

訪問 https://aka.ms/first-spring-batch-job!!

訂閱 Spring 資訊

透過 Spring 資訊保持聯絡

訂閱

領先一步

VMware 提供培訓和認證,助您飛速提升。

瞭解更多

獲取支援

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

瞭解更多

近期活動

檢視 Spring 社群的所有近期活動。

檢視全部