溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Modern Batch和計算密集型的編程模型是如何批量處理

發(fā)布時間:2021-11-02 09:20:07 來源:億速云 閱讀:133 作者:iii 欄目:編程語言

本篇內(nèi)容主要講解“Modern Batch和計算密集型的編程模型是如何批量處理”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Modern Batch和計算密集型的編程模型是如何批量處理”吧!

  ModernBatch和計算密集型的編程模型怎么批量處理

  更輕松的開發(fā)和維護,因為使用了相同的工具集。

  企業(yè)標準和服務質(zhì)量實施上的一致性。

  IBM開發(fā)的解決方案提供了一種具有凝聚力的批處理程序管理模式。IBMWebSphereApplicationServer的ModernBatch功能(可用于WebSphereApplicationServerV8、WebSphereApplicationServerV7.0FeaturePackforModernBatch和IBMWebSphereExtendedDeploymentComputeGridV8.0中)提供了一個批處理中間件框架,提供了:

  容器管理的批處理作業(yè)執(zhí)行:提供了Java批處理應用程序所需的結(jié)構(gòu)和支持功能,幫助您避免“自定義中間件陷阱”。

  作業(yè)控制接口:一個XML文件,描述一個批處理步驟中使用的Java類文件和批處理作業(yè)中包含的步驟。

  作業(yè)檢查點和重新啟動功能:能夠在記錄數(shù)量或時間的基礎上創(chuàng)建檢查點。這支持從一個已知的檢查點重新啟動一個作業(yè)。

  通用批處理數(shù)據(jù)流(BDS):包含將數(shù)據(jù)抽象為容易訪問的記錄格式的功能,使批處理編程能夠重點關(guān)注業(yè)務功能,而不是讀取和寫入數(shù)據(jù)的基本代碼。

  擁有這樣一個框架,可為開發(fā)自定義批處理中間件提供一種不錯的替代方法,允許開發(fā)人員將精力集中在實現(xiàn)核心業(yè)務目標上。使用ModernBatch,可以將批處理應用程序的開發(fā)精簡為編寫作業(yè)的業(yè)務邏輯。這種業(yè)務邏輯與“管道”代碼之間的關(guān)注點分離是批處理框架的一個重要優(yōu)勢。它實現(xiàn)了批處理功能的一種更有效的模塊化,這支持更有效的重用,能夠?qū)⑴幚砉_為模塊化服務。

  ModernBatch和計算密集型的編程模型怎么批量處理

  ModernBatch支持兩種批處理編程模式:

  計算密集型:適用于執(zhí)行計算密集型工作,且不需要重新啟動功能的簡單作業(yè)。

  事務批處理:適用于需要一個容器管理的檢查點和一種重新啟動機制的作業(yè)。如果因為計劃或未計劃的斷電而中斷,這支持批處理作業(yè)從上一個檢查點重新啟動。

  本文分析計算密集型模型并提供一個示例實現(xiàn),該實現(xiàn)使用了IBMRationalApplicationDeveloperv8中所提供的新功能。

  計算密集型的編程模型

  計算密集型的編程包含以下元素:

  控制器bean:一種無狀態(tài)的會話bean,支持運行時環(huán)境控制應用程序的作業(yè)。此無狀態(tài)會話bean(CIControllerBean)的實現(xiàn)由應用服務器提供。

  作業(yè)步驟實現(xiàn)類:作業(yè)步驟表示作業(yè)將執(zhí)行的業(yè)務邏輯。它由一個實現(xiàn)com.ibm.websphere.ci.CIWork接口的類的實例表示。CIWork接口包含以下方法:

  run()方法將在CI作業(yè)運行時執(zhí)行。

  getProperties()和setProperties()方法用于通過來自客戶端的屬性獲取輸入值。

  定義xJCL文件。

  創(chuàng)建實現(xiàn)CIWork接口的Java類,包含將對每個作業(yè)步驟執(zhí)行的業(yè)務邏輯。

  使用指向com.ibm.ws.ci.CIControllerBean的無狀態(tài)會話bean將CIWork適當?shù)匕b為實現(xiàn)類。

  在構(gòu)建示例計算密集型作業(yè)之前,一定要先理解計算密集型應用程序在運行時期間的行為??傊l(fā)生的事情是:應用服務器使用xJCL文件查找并調(diào)用控制器bean。bean讀取xJCL文件,對于xJCL中的每個作業(yè)步驟,bean將執(zhí)行以下操作:

  使用CIWork類的無參數(shù)構(gòu)造函數(shù)實例化應用程序CIWork對象(由作業(yè)步驟的xJCL中的類名稱元素指定)。

  調(diào)用CIWork對象的setProperties()方法傳遞作業(yè)步驟的xJCL中定義的任何屬性。

  查找在企業(yè)bean模塊的部署描述符中定義的工作管理器,使用它異步調(diào)用CIWork對象的run()方法。

  有了對編程模型的這一理解之后,讓我們看看開發(fā)計算密集型應用程序的步驟。

到此,相信大家對“Modern Batch和計算密集型的編程模型是如何批量處理”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI