天天看點

跑批利器--批處理應用程式跑批利器--批處理應用程式

      首先先了解一下什麼是批處理應用程式.當然,根據名字我們基本上能夠知道它是要幹什麼的了,就是對程式進行批量處理.

        現在舉例一個最常見的場景:批處理應用程式從一個檔案系統中導出資料到另個系統,在導出的過程中進行相關的邏輯處理,這麼一個場景的場景就是它的提現.

跑批利器--批處理應用程式跑批利器--批處理應用程式

        具體可以參照上圖,系統a從資料庫導出檔案(一般為富文本檔案),然後系統b去讀取這些檔案,進過系統b自身的處理,将處理後的資料寫到系統b的資料庫中.整個過程就是批量處理程式在做的事情.

        因為一個批應用程式它要自動去處理這些資料,是以它必須要是健壯的和可靠的.因為沒有人為的幹預從一個錯誤中恢複正常。是以批量應用程式處理的資料量越大,需要完成的時間也就越長。這也就是說,你必須考慮在你的批處理程式中的性能,因為它是往往限制在一個特定的時間段内執行。基于此描述,批處理應用程式的要求如下:

    ■大資料量

批處理應用程式必須能夠處理大量的資料導入、導出或計算。

    ■自動化

批處理應用程式必須運作在使用者互動除外嚴重問題解決。

    ■健壯性

批處理應用程式必須在處理無效資料時沒有導緻系統崩潰.

    ■可靠性

批處理應用程式必須跟蹤錯誤是什麼時(記錄、通知)。

    ■性能

批處理應用程式必須執行在專用的時間内處理完進而避免幹擾任何其他應用程式的正常運作.

         通過以上的要求我們可以感覺到批處理應用程式算是一個挑戰吧,這也就是我們為什麼要用springbatch來進行跑批,因為springbatch本身的特點能夠讓我們更容易并且更有效可靠的完成一個批量任務.

       小結

      批量應用程式處理大量資料而無需人類幹預。讀者可以選擇使用批處理程式來計算每月的财務報表、計算統計和索引檔案的資料等等。當然涉及到銀行系統中有很多業務都需要用到它,例如計提,計息,切日,賬務彙總等等.