偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Spring Batch 2將支持工作劃分和基于注解的配置

開發(fā) 后端
最新版本的Spring Batch框架支持工作劃分(job partitioning)、遠程分割(remote chunking)及基于注解的配置。Spring Batch開發(fā)團隊最近發(fā)布了batch框架的2.0版。新版本還新增了諸如對Java 5的支持及非順序執(zhí)行等特性。

這一版本的新特性可以分為四類:對Java 5的支持、非順序執(zhí)行、增強的可伸縮性以及注解。

對Java 5的支持:

Spring Batch 2.0版支持Java 5泛型和參數(shù)化類型,以便可以在編譯時檢查類型安全性。例如,ItemReader接口現(xiàn)在有了一個類型安全的read方法。

非順序執(zhí)行:

這其實包括3個新特性——條件、暫停和并行執(zhí)行。憑借這些特性,各步驟可以按非線性順序執(zhí)行。即使工作(Job)中的某個步驟(step)失敗,整個工作也依然能夠完成。有條件執(zhí)行(Conditional execution)根據(jù)***一個ExitStatus把工作劃分為不同的分支。這也包括FAILED狀態(tài)下執(zhí)行分支任務(wù)的能力,也就是說一個步驟的失敗不再是整個工作的致命錯誤。暫停執(zhí)行(Pause execution)可以用來停止或等待外部命令(explicit instruction),這在業(yè)務(wù)規(guī)則需要人工干預(yù)以檢查業(yè)務(wù)關(guān)鍵數(shù)據(jù)是否有效時非常有用。而對于多步驟的并行執(zhí)行(parallel execution),各步驟間互相獨立,用戶可以自行指定哪些分支能夠并行執(zhí)行。

可伸縮性:

新版采用兩種方法支持多進程的并行執(zhí)行:遠程分割及劃分。遠程分割是在對數(shù)據(jù)結(jié)構(gòu)沒有任何詳盡認知的情況下對一個步驟的特定工作進行劃分的一項技術(shù)。任何輸入源都可以動態(tài)分割,只需要通過單一進程讀取該輸入源,并將其作為一整塊發(fā)送給遠程工作進程即可。遠程工作進程實現(xiàn)了listener模式,對請求作出響應(yīng),處理數(shù)據(jù)且異步發(fā)回應(yīng)答。請求和應(yīng)答的傳輸必須是持久性的、有保證的,且只有單一的消費者,這些特性在所有JMS實現(xiàn)中都已具備。Spring Batch正是在Spring Integration基礎(chǔ)上構(gòu)建的遠程分割特性,因此它根本不必關(guān)心消息中間件的實際實現(xiàn)。 

劃分是實現(xiàn)可伸縮性的另一種方式,相比之下,它需要知道輸入數(shù)據(jù)的結(jié)構(gòu),比如主鍵的范圍、或者要處理文件的名字。這種模式的好處是,分區(qū)中的每個元素的處理器都可以看作是正常Spring Batch工作中的單個步驟。它們不用實現(xiàn)任何特定模式,因而易于配置和測試。劃分比遠程分割更具伸縮性,這是因為在同一地方讀取所有輸入數(shù)據(jù)時不會產(chǎn)生序列化瓶頸。在Spring Batch 2.0 中,劃分由兩個接口支持:PartitionHandler 和StepExecutionSplitter。

基于注解的配置:

Spring Batch組件如reader、writer、processor、listener,都可以使用注解來配置,也都可以插入到任務(wù)的某個步驟中去。這是通過針對Spring Batch的XML命名空間來實現(xiàn)的。

新版本在應(yīng)用程序監(jiān)測方面也有一些變化,包括對執(zhí)行或跳過項目的計數(shù)、記賬;在每個階段對所有項目讀取、處理和寫入的分割計數(shù)等方面的統(tǒng)計。對于那些沒有把執(zhí)行劃分成讀取、處理、寫入等各個步驟(或tasklet)的應(yīng)用來說,這些統(tǒng)計更多的是為了綜合了解而絕非必需,但多數(shù)情況下,這總比只存儲項目總數(shù)更可取。

SpringSource計劃在企業(yè)級Batch產(chǎn)品中提供劃分和遠程分割、還有管理和調(diào)度等方面的完整的運行時解決方案。其未來的路線圖還包括為Spring Batch 2.1增加Spring 3.0依賴(同時保留2.5.6為可選)。正是出于這樣的計劃,新版本中涵蓋的特性以工作和步驟的配置居多,尤其是在配置過程中使用了Spring Expression Language (EL)的延遲綁定(late binding),該延遲綁定的語法和Spring Batch 2.0中的基本相同,只是所提供的特性更多、靈活性更大。

【編輯推薦】

  1. 實例說明如何集成Spring和Struts
  2. 淺談Struts+Hibernate+Spring的整合方法
  3. Spring中XML配置的12個技巧
責任編輯:彭凡 來源: javaeye
相關(guān)推薦

2022-05-30 11:17:44

Spring容器配置

2020-12-11 11:26:47

Spring批處理重試

2021-12-20 07:32:26

SpringFreemarkerJSP

2025-04-29 08:00:36

2022-06-09 07:27:14

JavaSpring容器

2009-06-18 15:40:07

Spring Batc

2009-06-17 16:14:22

Spring 3.0全

2010-11-10 10:43:56

Windows 8云計算

2010-07-16 10:23:28

Batch telne

2025-03-25 12:00:00

@Value?Spring開發(fā)

2021-10-31 19:39:11

注解Spring 核心類

2022-02-16 13:46:40

Spring Aop代碼注解

2019-11-22 09:40:40

SpringJava編程語言

2025-03-24 09:10:00

Spring注解代碼

2009-03-11 20:15:39

LinuxWineCrossOver

2023-08-22 08:01:42

SpringBatch事務(wù)管理

2020-12-09 14:43:24

LinuxLi-Fi網(wǎng)絡(luò)技術(shù)

2023-10-11 16:24:11

Spring@ImportJava

2017-11-17 09:13:31

Java注解

2010-03-25 18:17:04

Nginx配置
點贊
收藏

51CTO技術(shù)棧公眾號