两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種異步批處理調(diào)度方法及系統(tǒng)的制作方法

文檔序號(hào):6632284閱讀:263來(lái)源:國(guó)知局
一種異步批處理調(diào)度方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明實(shí)施例公開(kāi)了異步批處理調(diào)度方法,包括:接收批處理業(yè)務(wù)請(qǐng)求,統(tǒng)計(jì)計(jì)算所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量;當(dāng)判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值,若為是,則分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型;當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理;當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理。采用本發(fā)明,提供統(tǒng)一的批處理業(yè)務(wù)開(kāi)發(fā)框架,易于開(kāi)發(fā)擴(kuò)展、運(yùn)維、監(jiān)控和異常處理,提高了批處理調(diào)度的靈活性;另外根據(jù)不同業(yè)務(wù)類型進(jìn)行分發(fā)處理,不同的業(yè)務(wù)類型可以對(duì)應(yīng)不同的任務(wù)處理池,有效提高了資源使用率。
【專利說(shuō)明】一種異步批處理調(diào)度方法及系統(tǒng)

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理【技術(shù)領(lǐng)域】,尤其涉及一種異步批處理調(diào)度方法及系統(tǒng)。

【背景技術(shù)】
[0002]隨著銀行業(yè)務(wù)的快速發(fā)展,業(yè)務(wù)種類、業(yè)務(wù)數(shù)量也隨之不斷增加,核心應(yīng)用系統(tǒng)將面臨大量的批處理業(yè)務(wù)。通常,用戶可以通過(guò)終端或者電子渠道等實(shí)時(shí)觸發(fā)并完成各種金融業(yè)務(wù),如銀行的存款、取款、轉(zhuǎn)賬、余額查詢、公積金歸集等,該種批處理交易處理時(shí)間短,發(fā)生的業(yè)務(wù)數(shù)據(jù)能立即進(jìn)入主機(jī)數(shù)據(jù)庫(kù),數(shù)據(jù)處理系統(tǒng)批量處理上述業(yè)務(wù)的數(shù)據(jù)為聯(lián)機(jī)批處理業(yè)務(wù);另外一種異步批處理業(yè)務(wù),其業(yè)務(wù)數(shù)據(jù)待加工和處理,交易數(shù)據(jù)量大、處理時(shí)間長(zhǎng),如自動(dòng)還款、銀行結(jié)息、生成各種會(huì)計(jì)報(bào)表等。
[0003]目前現(xiàn)有的批處理調(diào)度方法,后臺(tái)系統(tǒng)需要根據(jù)業(yè)務(wù)處理量的大小進(jìn)行判斷作為聯(lián)機(jī)交易處理還是異步批處理,且異步批處理與聯(lián)機(jī)交易處理完全脫節(jié),缺少對(duì)聯(lián)機(jī)批處理任務(wù)的管理,而且異步批處理都是根據(jù)用戶預(yù)先設(shè)定好的批處理邏輯,在某個(gè)固定的時(shí)間段進(jìn)行統(tǒng)一執(zhí)行批處理調(diào)度,缺少調(diào)度的靈活性。


【發(fā)明內(nèi)容】

[0004]本發(fā)明實(shí)施例所要解決的技術(shù)問(wèn)題在于,提供一種異步批處理調(diào)度方法及系統(tǒng),提供統(tǒng)一的批處理業(yè)務(wù)開(kāi)發(fā)框架,易于開(kāi)發(fā)擴(kuò)展、運(yùn)維、監(jiān)控和異常處理,解決了現(xiàn)有技術(shù)中批處理缺少調(diào)度靈活性的問(wèn)題,另外根據(jù)不同業(yè)務(wù)類型進(jìn)行分發(fā)處理,不同的業(yè)務(wù)類型可以對(duì)應(yīng)不同的任務(wù)處理池,有效提高了資源使用率。
[0005]為了解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例第一方面公開(kāi)了一種異步批處理調(diào)度方法,包括
[0006]接收批處理業(yè)務(wù)請(qǐng)求,統(tǒng)計(jì)計(jì)算所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量;
[0007]判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值,若為是,則分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型;
[0008]當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理;當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理。
[0009]本發(fā)明實(shí)施例第二方面公開(kāi)了一種異步批處理調(diào)度系統(tǒng),包括
[0010]接收模塊,接收批處理業(yè)務(wù)請(qǐng)求;
[0011]計(jì)算模塊,用于統(tǒng)計(jì)計(jì)算所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量;
[0012]判斷模塊,用于判斷所述計(jì)算模塊計(jì)算的所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值;
[0013]異步分析模塊,用于當(dāng)所述判斷模塊輸出為是時(shí),分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型;
[0014]實(shí)時(shí)調(diào)度模塊,用于當(dāng)所述異步分析模塊根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理;
[0015]異步調(diào)度模塊,用于當(dāng)異步分析模塊根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理。
[0016]實(shí)施本發(fā)明實(shí)施例,具有如下有益效果:
[0017]通過(guò)提供統(tǒng)一的批量業(yè)務(wù)開(kāi)發(fā)框架,易于開(kāi)發(fā)擴(kuò)展、運(yùn)維、監(jiān)控和異常處理;根據(jù)不同任務(wù)種類進(jìn)行分發(fā)處理,不同的任務(wù)種類可以對(duì)應(yīng)不同的任務(wù)處理池,有效提高了資源使用率;批處理任務(wù)時(shí)間段可控,對(duì)于一些對(duì)實(shí)時(shí)性要求不高的批量處理任務(wù),通過(guò)定義預(yù)約任務(wù),將任務(wù)放在系統(tǒng)空閑時(shí)段運(yùn)行,以保障系統(tǒng)在實(shí)時(shí)交易高峰時(shí)段有最大資源的使用權(quán),對(duì)于一些實(shí)時(shí)要求較高的批量業(yè)務(wù),可以不受此允許時(shí)間段的控制,進(jìn)行實(shí)時(shí)調(diào)度。

【專利附圖】

【附圖說(shuō)明】
[0018]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0019]圖1是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法的流程示意圖;
[0020]圖2是本發(fā)明提供的異步批處理調(diào)度方法的另一實(shí)施例的流程示意圖;
[0021]圖3-1是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法之實(shí)時(shí)調(diào)度任務(wù)的流程示意圖;
[0022]圖3-2是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法之異步調(diào)度任務(wù)的流程示意圖;
[0023]圖4是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法之實(shí)時(shí)調(diào)度方法的流程示意圖;
[0024]圖5是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法之異步調(diào)度方法的流程示意圖;
[0025]圖6是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法之預(yù)約調(diào)度方法的流程示意圖;
[0026]圖7是本發(fā)明實(shí)施例提供的異步批處理調(diào)度系統(tǒng)示意圖;
[0027]圖8是本發(fā)明實(shí)施例提供的批處理調(diào)度系統(tǒng)示意圖;
[0028]圖9是本發(fā)明實(shí)施例提供的實(shí)時(shí)調(diào)度模塊示意圖;
[0029]圖10是本發(fā)明實(shí)施例提供的異步調(diào)度模塊示意圖;
[0030]圖11是本發(fā)明實(shí)施例提供的預(yù)約任務(wù)模塊示意圖。

【具體實(shí)施方式】
[0031]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0032]需要說(shuō)明的是,在本發(fā)明實(shí)施例中使用的術(shù)語(yǔ)是僅僅出于描述特定實(shí)施例的目的,而非旨在限制本發(fā)明。在本發(fā)明實(shí)施例和所附權(quán)利要求書(shū)中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語(yǔ)“和/或”是指并包含一個(gè)或多個(gè)相關(guān)聯(lián)的列出項(xiàng)目的任何或所有可能組合。
[0033]參見(jiàn)圖1,是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法的流程示意圖,該方法包括:
[0034]步驟3100:接收批處理業(yè)務(wù)請(qǐng)求,統(tǒng)計(jì)計(jì)算所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量;
[0035]具體地,接收批處理業(yè)務(wù)的請(qǐng)求,可以是前端設(shè)備傳送的批處理業(yè)務(wù),也可以是接收其他系統(tǒng)傳送的批處理業(yè)務(wù),也可以是通過(guò)終端或各種電子渠道實(shí)時(shí)觸發(fā)的聯(lián)機(jī)事務(wù),來(lái)完成各種金融事務(wù)的處理;
[0036]批處理業(yè)務(wù)包含但不限于各種代收付、公積金歸集、匯繳、賬戶結(jié)息、登記簿處理、日結(jié)單、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)、保險(xiǎn)公司的保單受理、保費(fèi)續(xù)繳、理賠等;
[0037]批處理的業(yè)務(wù)特點(diǎn)為:(1) 一次業(yè)務(wù)請(qǐng)求處理的業(yè)務(wù)數(shù)據(jù)為批量(多筆)業(yè)務(wù)數(shù)據(jù);(2)業(yè)務(wù)處理的數(shù)據(jù)源不僅僅是單筆交易數(shù)據(jù)報(bào)文,有可能是數(shù)據(jù)文件。
[0038]步驟3102:判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值的結(jié)果為是時(shí),則分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型;
[0039]具體地,數(shù)據(jù)門(mén)限值可以根據(jù)以下條件之一或者相互自由組合進(jìn)行設(shè)置:處理所述批處理業(yè)務(wù)的設(shè)備性能、所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或所述批處理業(yè)務(wù)的類型等,將所述交易處理數(shù)據(jù)量與所述數(shù)據(jù)門(mén)限值進(jìn)行比較判斷。
[0040]當(dāng)所述交易處理數(shù)據(jù)量大于所述數(shù)據(jù)門(mén)限值時(shí),登記所述批處理業(yè)務(wù)為異步批處理業(yè)務(wù),將所述批處理業(yè)務(wù)的交易上下文保存到數(shù)據(jù)庫(kù),等到異步任務(wù)調(diào)度主控進(jìn)行輪訓(xùn)調(diào)度執(zhí)行;異步批處理的業(yè)務(wù)類型包含但不限于賬戶結(jié)息、登記簿、日結(jié)單、公積金匯繳、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)等。
[0041]步驟3104:當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理;當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理;
[0042]具體地,可以預(yù)先設(shè)置登記簿、生產(chǎn)各種報(bào)表等業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù),可以預(yù)先設(shè)置賬戶結(jié)息、日結(jié)單、公積金匯繳、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)等為異步調(diào)度任務(wù);分析步驟3102中所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型,當(dāng)業(yè)務(wù)類型為登記簿或者生產(chǎn)各種報(bào)表或者其他預(yù)先設(shè)置的實(shí)時(shí)調(diào)度任務(wù)類型,則登記所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù);實(shí)時(shí)調(diào)度任務(wù)主要是針對(duì)業(yè)務(wù)處理量比較少的業(yè)務(wù),可以將所述異步批處理交易模擬成聯(lián)機(jī)交易,支持聯(lián)機(jī)等待異步處理的返回結(jié)果;分析步驟3102中所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型,當(dāng)業(yè)務(wù)類型為賬戶結(jié)息或者日結(jié)單或者公積金匯繳或者其他預(yù)先設(shè)置的異步調(diào)度任務(wù)類型,則登記所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù);異步調(diào)度任務(wù)主要針對(duì)業(yè)務(wù)處理量較大的業(yè)務(wù),將所述異步批處理業(yè)務(wù)存儲(chǔ)于內(nèi)存中,等待任務(wù)調(diào)度主控程序進(jìn)行輪訓(xùn)查詢并執(zhí)行。
[0043]另外,異步批處理業(yè)務(wù)的處理數(shù)據(jù)量可能會(huì)比較大,處理耗時(shí)會(huì)較長(zhǎng),在處理時(shí),采用異步業(yè)務(wù)處理模式,即發(fā)起方準(zhǔn)備好數(shù)據(jù)并觸發(fā)業(yè)務(wù)處理之后即返回,并不一直等待業(yè)務(wù)處理結(jié)束。
[0044]參見(jiàn)圖2,是本發(fā)明提供的異步批處理調(diào)度方法的另一實(shí)施例的流程示意圖,該方法包括:
[0045]步驟3200:接收批處理業(yè)務(wù)請(qǐng)求,統(tǒng)計(jì)計(jì)算所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量;
[0046]具體地,接收批處理業(yè)務(wù)的請(qǐng)求,可以是前端設(shè)備傳送的批處理業(yè)務(wù),也可以是接收其他系統(tǒng)傳送的批處理業(yè)務(wù),也可以是通過(guò)終端或各種電子渠道實(shí)時(shí)觸發(fā)的聯(lián)機(jī)事務(wù),來(lái)完成各種金融事務(wù)的處理;
[0047]批處理業(yè)務(wù)包含但不限于各種代收付、公積金歸集、匯繳、賬戶結(jié)息、登記簿處理、日結(jié)單、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)、保險(xiǎn)公司的保單受理、保費(fèi)續(xù)繳、理賠等;
[0048]批處理的業(yè)務(wù)特點(diǎn)為:(1) 一次業(yè)務(wù)請(qǐng)求處理的業(yè)務(wù)數(shù)據(jù)為批量(多筆)業(yè)務(wù)數(shù)據(jù);(2)業(yè)務(wù)處理的數(shù)據(jù)源不僅僅是單筆交易數(shù)據(jù)報(bào)文,有可能是數(shù)據(jù)文件。
[0049]步驟3202:判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值;
[0050]具體地,數(shù)據(jù)門(mén)限值可以根據(jù)以下條件之一或者相互自由組合進(jìn)行設(shè)置:處理所述批處理業(yè)務(wù)的設(shè)備性能、所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或者所述批處理業(yè)務(wù)的類型等,將所述交易處理數(shù)據(jù)量與所述數(shù)據(jù)門(mén)限值進(jìn)行比較判斷。
[0051]步驟3204:分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型;
[0052]具體地,當(dāng)步驟3202判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值的結(jié)果為是時(shí),登記所述批處理業(yè)務(wù)為異步批處理業(yè)務(wù),將所述批處理業(yè)務(wù)的交易上下文保存到數(shù)據(jù)庫(kù),等到異步任務(wù)調(diào)度主控進(jìn)行輪訓(xùn)調(diào)度執(zhí)行;異步批處理的業(yè)務(wù)類型包含但不限于賬戶結(jié)息、登記簿、日結(jié)單、公積金匯繳、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)等。
[0053]步驟3206:當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理;當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理;
[0054]具體地,可以預(yù)先設(shè)置登記簿、生產(chǎn)各種報(bào)表等業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù),可以預(yù)先設(shè)置賬戶結(jié)息、日結(jié)單、公積金匯繳、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)等為異步調(diào)度任務(wù);分析步驟3204中所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型,當(dāng)業(yè)務(wù)類型為登記簿或者生產(chǎn)各種報(bào)表或者其他預(yù)先設(shè)置的實(shí)時(shí)調(diào)度任務(wù)類型,則登記所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù);實(shí)時(shí)調(diào)度任務(wù)主要是針對(duì)業(yè)務(wù)處理量比較少的業(yè)務(wù),可以將所述異步批處理交易模擬成聯(lián)機(jī)交易,支持聯(lián)機(jī)等待異步處理的返回結(jié)果;分析步驟3204中所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型,當(dāng)業(yè)務(wù)類型為賬戶結(jié)息或者日結(jié)單或者公積金匯繳或者其他預(yù)先設(shè)置的異步調(diào)度任務(wù)類型,則登記所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù);異步調(diào)度任務(wù)主要針對(duì)業(yè)務(wù)處理量較大的業(yè)務(wù),將所述異步批處理業(yè)務(wù)存儲(chǔ)于內(nèi)存中,等待任務(wù)調(diào)度主控程序進(jìn)行輪訓(xùn)查詢并執(zhí)行。
[0055]另外,異步批處理業(yè)務(wù)的處理數(shù)據(jù)量可能會(huì)比較大,處理耗時(shí)會(huì)較長(zhǎng),在處理時(shí),采用異步業(yè)務(wù)處理模式,即發(fā)起方準(zhǔn)備好數(shù)據(jù)并觸發(fā)業(yè)務(wù)處理之后即返回,并不一直等待業(yè)務(wù)處理結(jié)束。
[0056]步驟3208:對(duì)所述批處理業(yè)務(wù)進(jìn)行聯(lián)機(jī)批處理;
[0057]具體地,當(dāng)步驟3202判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值的結(jié)果為否時(shí),登記所述批處理業(yè)務(wù)為聯(lián)機(jī)批處理業(yè)務(wù),采用聯(lián)機(jī)批處理模式對(duì)所述聯(lián)機(jī)批處理業(yè)務(wù)進(jìn)行數(shù)據(jù)處理,即通過(guò)聯(lián)機(jī)交易的服務(wù)注冊(cè)信息進(jìn)行調(diào)度執(zhí)行對(duì)應(yīng)的聯(lián)機(jī)批處理,聯(lián)機(jī)批處理業(yè)務(wù)處理時(shí)間較短,支持同步返回。
[0058]參見(jiàn)圖3-1,是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法之實(shí)時(shí)調(diào)度任務(wù)的流程示意圖,可理解的,在圖2所述的步驟S206中,當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理之后,該方法包括:
[0059]步驟S300:對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理時(shí),創(chuàng)建相應(yīng)的實(shí)時(shí)調(diào)度任務(wù);
[0060]具體地,當(dāng)圖2中步驟S206根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理,在對(duì)所述異步批處理業(yè)務(wù)實(shí)時(shí)調(diào)度處理之前,創(chuàng)建所述異步批處理業(yè)務(wù)相應(yīng)的實(shí)時(shí)調(diào)度任務(wù)。
[0061]步驟S302:判斷實(shí)時(shí)調(diào)度任務(wù)池是否滿載;
[0062]具體地,在步驟S300創(chuàng)建所述異步批處理業(yè)務(wù)相應(yīng)的實(shí)時(shí)調(diào)度任務(wù),然后將所述實(shí)時(shí)調(diào)度任務(wù)分配到實(shí)時(shí)調(diào)度任務(wù)池之前,判斷所述實(shí)時(shí)調(diào)度任務(wù)池是否滿載。
[0063]步驟S304:拒絕調(diào)度執(zhí)行所述實(shí)時(shí)調(diào)度任務(wù);
[0064]具體地,當(dāng)步驟S302判斷實(shí)時(shí)調(diào)度任務(wù)池是否滿載的結(jié)果為是時(shí),則直接拒絕調(diào)度執(zhí)行本條實(shí)時(shí)調(diào)度任務(wù),并返回系統(tǒng)繁忙消息。
[0065]步驟S306:將所述實(shí)時(shí)調(diào)度任務(wù)分配到相應(yīng)的實(shí)時(shí)調(diào)度任務(wù)池;
[0066]具體地,當(dāng)步驟S302判斷實(shí)時(shí)調(diào)度任務(wù)池是否滿載的結(jié)果為否時(shí),則將本條實(shí)時(shí)調(diào)度任務(wù)分配到相應(yīng)的實(shí)時(shí)調(diào)度任務(wù)池,等待調(diào)度執(zhí)行。
[0067]參見(jiàn)圖3-2,是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法之異步調(diào)度任務(wù)的流程示意圖,可理解的,在圖2所述的步驟S206中,當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理之后,該方法包括:
[0068]步驟308,對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理時(shí),創(chuàng)建相應(yīng)的異步調(diào)度任務(wù);
[0069]具體地,當(dāng)步驟S206根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理,在對(duì)所述異步批處理業(yè)務(wù)異步調(diào)度處理之前,創(chuàng)建所述異步批處理業(yè)務(wù)相應(yīng)的異步調(diào)度任務(wù)。
[0070]創(chuàng)建所述異步批處理業(yè)務(wù)首先需要對(duì)異步調(diào)度任務(wù)進(jìn)行定義,所述異步調(diào)度任務(wù)定義是管理預(yù)約任務(wù),可以將預(yù)約任務(wù)保存到異步調(diào)度任務(wù)定義表中;異步調(diào)度任務(wù)生成調(diào)度主控會(huì)根據(jù)任務(wù)定義表中的數(shù)據(jù)來(lái)生成執(zhí)行任務(wù)。另外,對(duì)已經(jīng)定義生產(chǎn)的異步調(diào)度任務(wù),可以通過(guò)異步調(diào)度任務(wù)注冊(cè)類進(jìn)行管理,即通過(guò)數(shù)據(jù)庫(kù)表注冊(cè)異步任務(wù)完成后,進(jìn)行調(diào)度并立即執(zhí)行異步任務(wù)。
[0071]異步調(diào)度任務(wù)注冊(cè)過(guò)程具體如下:根據(jù)每個(gè)異步調(diào)度任務(wù)類型調(diào)用相應(yīng)的doAddTask方法(其中doAddTask方法用于添加異步任務(wù)),可以往異步調(diào)度任務(wù)數(shù)據(jù)表和參數(shù)表寫(xiě)入任務(wù)相關(guān)信息;然后對(duì)于需要即刻執(zhí)行的任務(wù)可以調(diào)用doExecTask方法(用于添加并執(zhí)行異步任務(wù)),該方法會(huì)先將狀態(tài)為執(zhí)行中的任務(wù)息插入任務(wù)息表和參數(shù)表,并可以通過(guò)對(duì)應(yīng)的任務(wù)執(zhí)行器(TaskHandler)直接調(diào)度執(zhí)行該任務(wù)。
[0072]可理解的是,上述異步調(diào)度任務(wù)注冊(cè)過(guò)程只作為一種可能的實(shí)施方式,本發(fā)明實(shí)施例中的異步調(diào)度任務(wù)注冊(cè)過(guò)程的步驟除了上述實(shí)施方式外還可以為其它實(shí)現(xiàn)方式,此處不做限定。
[0073]步驟S310:判斷異步調(diào)度任務(wù)池是否滿載;
[0074]具體地,在步驟S308創(chuàng)建所述異步批處理業(yè)務(wù)相應(yīng)的異步調(diào)度任務(wù),然后將所述異步調(diào)度任務(wù)分配到異步調(diào)度任務(wù)池之前,判斷異步調(diào)度任務(wù)池是否滿載。
[0075]步驟S312:拒絕處理或者由發(fā)起線程處理或者忽略處理;
[0076]異步調(diào)度任務(wù)池管理一個(gè)線程池和等待隊(duì)列,當(dāng)步驟S310判斷異步調(diào)度任務(wù)池是否滿載的結(jié)果為是時(shí),拒絕處理所述異步調(diào)度任務(wù),將所述異步調(diào)度任務(wù)保存在等待線性隊(duì)列中,等待異步任務(wù)池不再滿載時(shí),將本條異步批處理任務(wù)存儲(chǔ)于異步調(diào)度任務(wù)池中,等待調(diào)度執(zhí)行;或者通過(guò)發(fā)起線程來(lái)處理所述異步調(diào)度任務(wù),所述異步批處理任務(wù)不被存儲(chǔ)于異步調(diào)度任務(wù)池等待下次調(diào)度執(zhí)行,而是由發(fā)起調(diào)度執(zhí)行的發(fā)起線程隊(duì)列進(jìn)行直接處理;或者忽略處理所述異步調(diào)度任務(wù),忽略所述異步批處理任務(wù),拋棄處理。
[0077]步驟S314:將所述異步調(diào)度任務(wù)分配到相應(yīng)的異步調(diào)度任務(wù)池;
[0078]具體地,當(dāng)步驟S310判斷異步調(diào)度任務(wù)池是否滿載的結(jié)果為否時(shí),則將本條異步調(diào)度任務(wù)分配到相應(yīng)的異步調(diào)度任務(wù)池,等待調(diào)度執(zhí)行。
[0079]參見(jiàn)圖4,是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法之實(shí)時(shí)調(diào)度方法的流程示意圖,該方法包括:
[0080]步驟S400:接收批處理業(yè)務(wù)請(qǐng)求,統(tǒng)計(jì)計(jì)算所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量;
[0081]具體地,接收批處理業(yè)務(wù)的請(qǐng)求,可以是前端設(shè)備傳送的批處理業(yè)務(wù),也可以是接收其他系統(tǒng)傳送的批處理業(yè)務(wù),也可以是通過(guò)終端或各種電子渠道實(shí)時(shí)觸發(fā)的聯(lián)機(jī)事務(wù),來(lái)完成各種金融事務(wù)的處理;
[0082]批處理業(yè)務(wù)包含但不限于各種代收付、公積金歸集、匯繳、賬戶結(jié)息、登記簿處理、日結(jié)單、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)、保險(xiǎn)公司的保單受理、保費(fèi)續(xù)繳、理賠等;
[0083]批處理的業(yè)務(wù)特點(diǎn)為:(I) 一次業(yè)務(wù)請(qǐng)求處理的業(yè)務(wù)數(shù)據(jù)為批量(多筆)業(yè)務(wù)數(shù)據(jù);(2)業(yè)務(wù)處理的數(shù)據(jù)源不僅僅是單筆交易數(shù)據(jù)報(bào)文,有可能是數(shù)據(jù)文件。
[0084]步驟S402:當(dāng)判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值的結(jié)果為是時(shí),則分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型;
[0085]具體地,數(shù)據(jù)門(mén)限值可以根據(jù)以下條件之一或者相互自由組合進(jìn)行設(shè)置:處理所述批處理業(yè)務(wù)的設(shè)備性能、所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或者所述批處理業(yè)務(wù)的類型等,將所述交易處理數(shù)據(jù)量與所述數(shù)據(jù)門(mén)限值進(jìn)行比較判斷。
[0086]當(dāng)所述交易處理數(shù)據(jù)量大于所述數(shù)據(jù)門(mén)限值時(shí),登記所述批處理業(yè)務(wù)為異步批處理業(yè)務(wù),將所述批處理業(yè)務(wù)的交易上下文保存到數(shù)據(jù)庫(kù),等到異步任務(wù)調(diào)度主控進(jìn)行輪訓(xùn)調(diào)度執(zhí)行;異步批處理的業(yè)務(wù)類型包含但不限于賬戶結(jié)息、登記簿、日結(jié)單、公積金匯繳、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)等。
[0087]步驟S404:當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理;
[0088]具體地,分析步驟S402中所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型,當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理,所述實(shí)時(shí)調(diào)度任務(wù)包含但不限于登記簿、生產(chǎn)各種報(bào)表等;實(shí)時(shí)調(diào)度任務(wù)主要是針對(duì)業(yè)務(wù)處理量比較少的業(yè)務(wù),支持聯(lián)機(jī)等待異步處理的返回結(jié)果,可以將所述異步批處理交易模擬成聯(lián)機(jī)交易。
[0089]步驟S406:創(chuàng)建相應(yīng)的實(shí)時(shí)調(diào)度任務(wù);
[0090]具體地,當(dāng)步驟S404根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理,在對(duì)所述異步批處理業(yè)務(wù)實(shí)時(shí)調(diào)度處理之前,創(chuàng)建所述異步批處理業(yè)務(wù)相應(yīng)的實(shí)時(shí)調(diào)度任務(wù)。
[0091]創(chuàng)建所述異步批處理業(yè)務(wù)首先可以對(duì)實(shí)時(shí)調(diào)度任務(wù)進(jìn)行定義,所述實(shí)時(shí)調(diào)度任務(wù)定義是管理預(yù)約任務(wù),可以將預(yù)約任務(wù)保存到實(shí)時(shí)調(diào)度任務(wù)定義表中;實(shí)時(shí)調(diào)度任務(wù)生成調(diào)度主控會(huì)根據(jù)實(shí)時(shí)調(diào)度任務(wù)定義表中的數(shù)據(jù)來(lái)生成執(zhí)行任務(wù)。另外,對(duì)已經(jīng)定義生產(chǎn)的實(shí)時(shí)調(diào)度異步任務(wù),通過(guò)實(shí)時(shí)調(diào)度任務(wù)注冊(cè)類進(jìn)行管理,即通過(guò)數(shù)據(jù)庫(kù)表注冊(cè)實(shí)時(shí)調(diào)度任務(wù)完成后,進(jìn)行調(diào)度并立即執(zhí)行實(shí)時(shí)調(diào)度任務(wù)。
[0092]實(shí)時(shí)調(diào)度任務(wù)注冊(cè)過(guò)程具體如下:可以根據(jù)每個(gè)實(shí)時(shí)調(diào)度任務(wù)類型調(diào)用相應(yīng)的doAddTask方法(其中doAddTask方法用于添加異步任務(wù)),可以往實(shí)時(shí)調(diào)度任務(wù)數(shù)據(jù)表和參數(shù)表寫(xiě)入任務(wù)相關(guān)信息;然后對(duì)于需要即刻執(zhí)行的任務(wù)可以調(diào)用doExecTask方法(用于添加并執(zhí)行異步任務(wù)),該方法會(huì)先將狀態(tài)為執(zhí)行中的任務(wù)信息插入到任務(wù)信息表和參數(shù)表中,并可以通過(guò)對(duì)應(yīng)的任務(wù)執(zhí)行器(TaskHandler)直接調(diào)度執(zhí)行該任務(wù)。
[0093]可理解的是,上述實(shí)時(shí)調(diào)度任務(wù)注冊(cè)過(guò)程只作為一種可能的實(shí)施方式,本發(fā)明實(shí)施例中的實(shí)時(shí)調(diào)度任務(wù)注冊(cè)過(guò)程的步驟除了上述實(shí)施方式外還可以為其它實(shí)現(xiàn)方式,此處不做限定。
[0094]步驟S408:判斷實(shí)時(shí)調(diào)度任務(wù)池是否滿載;
[0095]具體地,在步驟S406創(chuàng)建所述異步批處理業(yè)務(wù)相應(yīng)的實(shí)時(shí)調(diào)度任務(wù),然后將所述實(shí)時(shí)調(diào)度任務(wù)分配到實(shí)時(shí)調(diào)度任務(wù)池之前,判斷所述實(shí)時(shí)調(diào)度任務(wù)池是否滿載。
[0096]步驟S410:拒絕調(diào)度執(zhí)行該筆實(shí)時(shí)調(diào)度任務(wù);
[0097]具體地,當(dāng)步驟S408判斷實(shí)時(shí)調(diào)度任務(wù)池是否滿載的結(jié)果為是時(shí),則直接拒絕調(diào)度執(zhí)行本條實(shí)時(shí)調(diào)度任務(wù),并返回系統(tǒng)繁忙消息。
[0098]步驟S412:將所述實(shí)時(shí)調(diào)度任務(wù)分配到相應(yīng)的實(shí)時(shí)調(diào)度任務(wù)池;
[0099]具體地,當(dāng)步驟S408判斷實(shí)時(shí)調(diào)度任務(wù)池是否滿載的結(jié)果為否時(shí),則將本條實(shí)時(shí)調(diào)度任務(wù)分配到相應(yīng)的實(shí)時(shí)調(diào)度任務(wù)池,等待調(diào)度執(zhí)行。
[0100]步驟S414:對(duì)所述實(shí)時(shí)調(diào)度任務(wù)進(jìn)行優(yōu)先級(jí)別設(shè)定;
[0101]具體地,根據(jù)所述實(shí)時(shí)調(diào)度任務(wù)池中的實(shí)時(shí)調(diào)度任務(wù)的業(yè)務(wù)類型,進(jìn)行優(yōu)先級(jí)別設(shè)定,例如,設(shè)定登記簿的優(yōu)先級(jí)別設(shè)定為一級(jí),將生產(chǎn)各種報(bào)表的優(yōu)先級(jí)別設(shè)定為二級(jí),一級(jí)優(yōu)先級(jí)高于二級(jí)優(yōu)先級(jí)。
[0102]步驟S416:根據(jù)優(yōu)先級(jí),調(diào)度執(zhí)行優(yōu)先級(jí)別高的實(shí)時(shí)調(diào)度任務(wù);
[0103]具體地,從步驟S412分配到實(shí)時(shí)調(diào)度任務(wù)池中的實(shí)時(shí)調(diào)度任務(wù)進(jìn)行調(diào)度執(zhí)行,調(diào)度執(zhí)行時(shí),按照實(shí)時(shí)調(diào)度任務(wù)的優(yōu)先級(jí)別的高低,優(yōu)先調(diào)度優(yōu)先級(jí)別高的實(shí)時(shí)調(diào)度任務(wù),例如,當(dāng)實(shí)時(shí)調(diào)度任務(wù)池中包含登記簿和生成各種報(bào)表時(shí),優(yōu)先調(diào)度登記簿業(yè)務(wù),等調(diào)度登記簿業(yè)務(wù)后,再調(diào)度執(zhí)行生成各種報(bào)表業(yè)務(wù)。
[0104]實(shí)時(shí)調(diào)度任務(wù)信息可以保存在任務(wù)信息表和參數(shù)表中,可以通過(guò)任務(wù)執(zhí)行器(TaskHandler)直接調(diào)度執(zhí)行所述實(shí)時(shí)調(diào)度任務(wù)。另外如果需要取消正在執(zhí)行的任務(wù)可以調(diào)用doCancelTask方法(用于取消任務(wù)時(shí),需輸入執(zhí)行任務(wù)的Taskid),但是正在執(zhí)行的任務(wù)不能進(jìn)行取消。
[0105]步驟S418:等待所述實(shí)時(shí)調(diào)度任務(wù)的返回結(jié)果,發(fā)送任務(wù)處理結(jié)果至客戶端;
[0106]具體地,doExecTaskWithResult方法可以實(shí)時(shí)等待實(shí)時(shí)調(diào)度任務(wù)的處理結(jié)果,可以用于添加并執(zhí)行實(shí)時(shí)調(diào)度任務(wù)并等待返回結(jié)果,等待超時(shí)時(shí)間默認(rèn)為30秒,另外也可以根據(jù)參數(shù)轉(zhuǎn)入執(zhí)行另一條實(shí)時(shí)調(diào)度任務(wù)。如果調(diào)用doExecTaskWithResult方法成功,那么返回實(shí)時(shí)調(diào)度任務(wù)的處理結(jié)果,如果調(diào)用超時(shí)則拋出運(yùn)行時(shí)異常消息。
[0107]所述分配到實(shí)時(shí)調(diào)度任務(wù)池中的所述實(shí)時(shí)調(diào)度任務(wù)的業(yè)務(wù)處理量一般比較少,處理時(shí)間也相對(duì)較短,處理實(shí)時(shí)調(diào)度任務(wù)池中的所述實(shí)時(shí)調(diào)度任務(wù)時(shí),可以在聯(lián)機(jī)交易中等待任務(wù)執(zhí)行的返回結(jié)果,就算聯(lián)機(jī)交易超時(shí)了,也不會(huì)影響原任務(wù)的執(zhí)行。當(dāng)所述實(shí)時(shí)調(diào)度任務(wù)處理結(jié)束后,將所述批處理業(yè)務(wù)的處理結(jié)果信息可以通過(guò)消息中心發(fā)送至客戶端;所述結(jié)果信息包含但不限于接收消息的節(jié)點(diǎn)號(hào),以及相關(guān)的機(jī)構(gòu)用戶信息等;所述客戶端包含但不限于指定機(jī)構(gòu)或者指定用戶等。
[0108]參見(jiàn)圖5,是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法之異步調(diào)度方法的流程示意圖,該方法包括:
[0109]步驟S500:接收批處理業(yè)務(wù)請(qǐng)求,統(tǒng)計(jì)計(jì)算所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量;
[0110]具體地,接收批處理業(yè)務(wù)的請(qǐng)求,可以是前端設(shè)備傳送的批處理業(yè)務(wù),也可以是接收其他系統(tǒng)傳送的批處理業(yè)務(wù),也可以是通過(guò)終端或各種電子渠道實(shí)時(shí)觸發(fā)的聯(lián)機(jī)事務(wù),來(lái)完成各種金融事務(wù)的處理;
[0111]批處理業(yè)務(wù)包含但不限于各種代收付、公積金歸集、匯繳、賬戶結(jié)息、登記簿處理、日結(jié)單、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)、保險(xiǎn)公司的保單受理、保費(fèi)續(xù)繳、理賠等;
[0112]批處理的業(yè)務(wù)特點(diǎn)為:(I) 一次業(yè)務(wù)請(qǐng)求處理的業(yè)務(wù)數(shù)據(jù)為批量(多筆)業(yè)務(wù)數(shù)據(jù);(2)業(yè)務(wù)處理的數(shù)據(jù)源不僅僅是單筆交易數(shù)據(jù)報(bào)文,有可能是數(shù)據(jù)文件。
[0113]步驟S502:當(dāng)判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值的結(jié)果為是時(shí),則分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型;
[0114]具體地,數(shù)據(jù)門(mén)限值可以根據(jù)以下條件之一或者相互自由組合進(jìn)行設(shè)置:處理所述批處理業(yè)務(wù)的設(shè)備性能、所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或者所述批處理業(yè)務(wù)的類型等,將所述交易處理數(shù)據(jù)量與所述數(shù)據(jù)門(mén)限值進(jìn)行比較判斷。
[0115]當(dāng)所述交易處理數(shù)據(jù)量大于所述數(shù)據(jù)門(mén)限值時(shí),登記所述批處理業(yè)務(wù)為異步批處理業(yè)務(wù),將所述批處理業(yè)務(wù)的交易上下文保存到數(shù)據(jù)庫(kù),等到異步任務(wù)調(diào)度主控進(jìn)行輪訓(xùn)調(diào)度執(zhí)行;異步批處理的業(yè)務(wù)類型包含但不限于賬戶結(jié)息、登記簿、日結(jié)單、公積金匯繳、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)等。
[0116]步驟S504:當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理;
[0117]具體地,分析步驟S502中所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型,當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理,所述異步調(diào)度任務(wù)包含但不限于賬戶結(jié)息、日結(jié)單、公積金匯繳、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)等;異步調(diào)度任務(wù)主要針對(duì)業(yè)務(wù)處理量較大的業(yè)務(wù),可以將所述異步批處理業(yè)務(wù)存儲(chǔ)于內(nèi)存中,等待任務(wù)調(diào)度主控程序進(jìn)行輪訓(xùn)查詢并執(zhí)行。
[0118]步驟3506:創(chuàng)建相應(yīng)的異步調(diào)度任務(wù);
[0119]具體地,當(dāng)步驟3504根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理,在對(duì)所述異步批處理業(yè)務(wù)異步調(diào)度處理之前,創(chuàng)建所述異步批處理業(yè)務(wù)相應(yīng)的異步調(diào)度任務(wù)。
[0120]創(chuàng)建所述異步批處理業(yè)務(wù)首先需要對(duì)異步調(diào)度任務(wù)進(jìn)行定義,所述異步調(diào)度任務(wù)定義是管理預(yù)約任務(wù),將預(yù)約任務(wù)保存到異步調(diào)度任務(wù)定義表中;異步調(diào)度任務(wù)生成調(diào)度主控會(huì)根據(jù)任務(wù)定義表中的數(shù)據(jù)來(lái)生成執(zhí)行任務(wù)。另外,對(duì)已經(jīng)定義生產(chǎn)的異步調(diào)度任務(wù),通過(guò)異步調(diào)度任務(wù)注冊(cè)類進(jìn)行管理,即通過(guò)數(shù)據(jù)庫(kù)表注冊(cè)異步任務(wù)完成后,進(jìn)行調(diào)度并立即執(zhí)行異步任務(wù)。
[0121]異步調(diào)度任務(wù)注冊(cè)過(guò)程具體如下:可以根據(jù)每個(gè)異步調(diào)度任務(wù)類型調(diào)用相應(yīng)的己0八方法(其中(10八方法用于添加異步任務(wù)),可以往異步調(diào)度任務(wù)數(shù)據(jù)表和參數(shù)表寫(xiě)入任務(wù)相關(guān)信息;然后對(duì)于需要即刻執(zhí)行的任務(wù)可以調(diào)用方法(用于添加并執(zhí)行異步任務(wù)),該方法會(huì)先將狀態(tài)為執(zhí)行中的任務(wù)彳目息插入任務(wù)彳目息表和參數(shù)表,并可以通過(guò)對(duì)應(yīng)的任務(wù)執(zhí)行器直接調(diào)度執(zhí)行該任務(wù)。
[0122]可理解的是,上述異步調(diào)度任務(wù)注冊(cè)過(guò)程只作為一種可能的實(shí)施方式,本發(fā)明實(shí)施例中的異步調(diào)度任務(wù)注冊(cè)過(guò)程的步驟除了上述實(shí)施方式外還可以為其它實(shí)現(xiàn)方式,此處不做限定。
[0123]步驟3508:判斷異步調(diào)度任務(wù)池是否滿載;
[0124]具體地,在步驟3506創(chuàng)建所述異步批處理業(yè)務(wù)相應(yīng)的異步調(diào)度任務(wù),然后將所述異步調(diào)度任務(wù)分配到異步調(diào)度任務(wù)池之前,判斷所述異步調(diào)度任務(wù)池是否滿載。
[0125]步驟3510:拒絕處理所述異步調(diào)度任務(wù),或者通過(guò)發(fā)起線程來(lái)處理所述異步調(diào)度任務(wù),或者忽略處理所述異步調(diào)度任務(wù);
[0126]具體地,當(dāng)步驟3508判斷異步調(diào)度任務(wù)池是否滿載的結(jié)果為是時(shí),則采取以下處理方式:直接拒絕調(diào)度執(zhí)行本條異步調(diào)度任務(wù),或者通過(guò)發(fā)起線程來(lái)處理所述異步調(diào)度任務(wù),或者忽略處理所述異步調(diào)度任務(wù);異步調(diào)度任務(wù)池管理一個(gè)線程池和等待隊(duì)列,當(dāng)異步調(diào)度任務(wù)池滿載時(shí),直接拒絕處理所述異步調(diào)度任務(wù),將所述異步調(diào)度任務(wù)保存在等待線性隊(duì)列中,等待異步任務(wù)池不再滿載時(shí),將本條異步批處理任務(wù)存儲(chǔ)于異步調(diào)度任務(wù)池中,等待下次調(diào)度執(zhí)行;或者通過(guò)發(fā)起線程來(lái)處理所述異步調(diào)度任務(wù),所述異步批處理任務(wù)不被存儲(chǔ)于異步調(diào)度任務(wù)池等待后續(xù)調(diào)度執(zhí)行,而是由發(fā)起調(diào)度執(zhí)行的發(fā)起線程隊(duì)列進(jìn)行直接處理;或者忽略處理所述異步調(diào)度任務(wù),忽略所述異步批處理任務(wù),拋棄處理。
[0127]步驟3512:將所述異步調(diào)度任務(wù)分配到相應(yīng)的異步調(diào)度任務(wù)池;
[0128]具體地,當(dāng)步驟3508判斷異步調(diào)度任務(wù)池是否滿載的結(jié)果為否時(shí),則將本條異步調(diào)度任務(wù)分配到相應(yīng)的異步調(diào)度任務(wù)池,等待調(diào)度執(zhí)行。
[0129]步驟3514:對(duì)所述異步調(diào)度任務(wù)進(jìn)行優(yōu)先級(jí)別設(shè)定;
[0130]具體地,根據(jù)所述異步調(diào)度任務(wù)池中的異步調(diào)度任務(wù)的業(yè)務(wù)類型,進(jìn)行優(yōu)先級(jí)別設(shè)定,例如,異步調(diào)度任務(wù)包含但不限于賬戶結(jié)息、日結(jié)單、公積金匯繳、大報(bào)文傳輸業(yè)務(wù)等,設(shè)定賬戶結(jié)息的優(yōu)先級(jí)別為一級(jí),設(shè)定日結(jié)單的優(yōu)先級(jí)別為二級(jí),設(shè)定公積金匯繳的優(yōu)先級(jí)別為三級(jí),設(shè)定大報(bào)文傳輸業(yè)務(wù)的優(yōu)先級(jí)別為四級(jí),一級(jí)優(yōu)先級(jí)最高,四級(jí)優(yōu)先級(jí)最低。
[0131]可理解的是,上述優(yōu)先級(jí)別設(shè)定過(guò)程只作為一種可能的實(shí)施方式,本發(fā)明實(shí)施例中的優(yōu)先級(jí)別設(shè)定過(guò)程除了上述實(shí)施方式外還可以為其他實(shí)現(xiàn)方式,此處不做限定。
[0132]步驟S516:對(duì)所述異步調(diào)度任務(wù)進(jìn)行數(shù)據(jù)切片處理,得到異步調(diào)度任務(wù)的切片數(shù)據(jù);
[0133]具體地,調(diào)度執(zhí)行所述異步調(diào)度任務(wù)時(shí),提供大批量數(shù)據(jù)切片處理機(jī)制,將所述異步批處理業(yè)務(wù)數(shù)據(jù)進(jìn)行數(shù)據(jù)切片處理,得到切片數(shù)據(jù),提供對(duì)所述切片數(shù)據(jù)進(jìn)行多線程批任務(wù)的并發(fā)處理。
[0134]數(shù)據(jù)切片與任務(wù)調(diào)度邏輯無(wú)關(guān),主要為批任務(wù)作業(yè)中大批量切片處理提供規(guī)范和支持。數(shù)據(jù)切片機(jī)制可以包括:數(shù)據(jù)切片邏輯接口(IChunkHandlerCD)、數(shù)據(jù)切片處理接口(IChunk)和一個(gè)批量數(shù)據(jù)處理邏輯BaseChunkJob。其中,批量數(shù)據(jù)處理邏輯BaseChunkJob根據(jù)用戶傳入的IChunkHandler〈T>對(duì)象,循環(huán)獲取并處理批量數(shù)據(jù)的一個(gè)切片;記錄處理接口(IChunkHandler〈T>)負(fù)責(zé)從數(shù)據(jù)源獲取當(dāng)前待處理的數(shù)據(jù)切片;數(shù)據(jù)切片處理接口(IChunk)負(fù)責(zé)提供某數(shù)據(jù)切片的處理邏輯。另外,批量數(shù)據(jù)處理邏輯BaseChunkJob是批量數(shù)據(jù)切片處理的入口類,BaseChunkJob依賴于IChunkHandler〈T>對(duì)象實(shí)現(xiàn)對(duì)數(shù)據(jù)切片的獲取;記錄處理接口 IChunkHandler〈T>需要開(kāi)發(fā)人員實(shí)現(xiàn)3個(gè)方法:hasNextChunk O , nextChunk O 和 close O 方法,具體為:hasNextChunk O 返回 boolean 值,判斷數(shù)據(jù)源是否處理完畢;neXtChunk()返回下一個(gè)待處理數(shù)據(jù)切片;cl0Se()用于批處理完畢后關(guān)閉數(shù)據(jù)源、文件等資源。IChunk包括方法:handleData(), handleDataO方法負(fù)責(zé)實(shí)現(xiàn)對(duì)一個(gè)切片的數(shù)據(jù)進(jìn)行處理的邏輯。
[0135]可理解的是,上述數(shù)據(jù)切片設(shè)定步驟只作為一種可能的實(shí)施方式,本發(fā)明實(shí)施例中的數(shù)據(jù)切片過(guò)程除了上述實(shí)施方式外還可以為其他實(shí)現(xiàn)方式,此處不做限定。
[0136]步驟S518:按照優(yōu)先級(jí),調(diào)度執(zhí)行所述異步調(diào)度任務(wù),并執(zhí)行所述切片數(shù)據(jù);
[0137]具體地,異步調(diào)度任務(wù)信息可以保存在任務(wù)信息表和參數(shù)表中,可以通過(guò)任務(wù)執(zhí)行器(TaskHandler)直接調(diào)度執(zhí)行所述異步調(diào)度任務(wù);另外可以通過(guò)任務(wù)調(diào)度管理器(TaskDispatch)實(shí)現(xiàn)任務(wù)調(diào)度管理功能,可以對(duì)定時(shí)查詢數(shù)據(jù)庫(kù)中的異步調(diào)度任務(wù)信息,獲取服務(wù)的類型、服務(wù)定位方式,進(jìn)而進(jìn)行調(diào)度執(zhí)行。
[0138]任務(wù)調(diào)度管理器(TaskDispatch)首先可以根據(jù)預(yù)先設(shè)定好的優(yōu)先級(jí)別,輪詢異步調(diào)度任務(wù)數(shù)據(jù)庫(kù)表,根據(jù)異步調(diào)度任務(wù)信息表中聲明的異步調(diào)度任務(wù)信息和參數(shù)表中提取相應(yīng)參數(shù),找到對(duì)應(yīng)的本地服務(wù),并根據(jù)服務(wù)注冊(cè)信息中的參數(shù)類型要求進(jìn)行轉(zhuǎn)換映射,在配置好的異步調(diào)度任務(wù)池中進(jìn)行運(yùn)行,對(duì)優(yōu)先級(jí)別高的異步任務(wù)進(jìn)行優(yōu)先調(diào)度執(zhí)行。例如,異步調(diào)度任務(wù)包含但不限于賬戶結(jié)息、日結(jié)單、公積金匯繳、大報(bào)文傳輸業(yè)務(wù)等,設(shè)定賬戶結(jié)息的優(yōu)先級(jí)別為一級(jí),設(shè)定日結(jié)單的優(yōu)先級(jí)別為二級(jí),設(shè)定公積金匯繳的優(yōu)先級(jí)別為三級(jí),設(shè)定大報(bào)文傳輸業(yè)務(wù)的優(yōu)先級(jí)別為四級(jí)。調(diào)度時(shí)優(yōu)先調(diào)度執(zhí)行賬戶結(jié)息業(yè)務(wù),而后調(diào)度執(zhí)行日結(jié)單業(yè)務(wù),再然后調(diào)度執(zhí)行公積金匯繳業(yè)務(wù),最后待其他類型的業(yè)務(wù)都調(diào)度執(zhí)行完畢后,再調(diào)度執(zhí)行大報(bào)文傳輸業(yè)務(wù)。
[0139]任務(wù)執(zhí)行器(TaskHandler)對(duì)需要異步執(zhí)行的任務(wù)進(jìn)行統(tǒng)一管理并執(zhí)行,支持串行和并行執(zhí)行兩種模式。采用線程池管理執(zhí)行異步任務(wù),限定并發(fā)線程數(shù)量,任務(wù)執(zhí)行隊(duì)列達(dá)到一定數(shù)量則采取相應(yīng)的執(zhí)行策略(拒絕執(zhí)行處理或在原線程中進(jìn)行執(zhí)行處理);另外如果需要取消正在執(zhí)行的任務(wù)則調(diào)用doCancelTask方法(用于取消任務(wù)時(shí),需輸入執(zhí)行任務(wù)的1(1),但是正在執(zhí)行的任務(wù)不能進(jìn)行取消。任務(wù)執(zhí)行器執(zhí)行任務(wù)時(shí),將步驟3516獲取的所述異步調(diào)度任務(wù)的切片數(shù)據(jù),進(jìn)行串行和/或并發(fā)執(zhí)行處理。
[0140]可理解的是,上述任務(wù)調(diào)度管理器和執(zhí)行任務(wù)器的設(shè)定過(guò)程只作為一種可能的實(shí)施方式,本發(fā)明實(shí)施例中的任務(wù)調(diào)度管理器和執(zhí)行任務(wù)器的設(shè)定過(guò)程除了上述實(shí)施方式外還可以為其他實(shí)現(xiàn)方式,此處不做限定。
[0141]步驟3520:等待所述異步調(diào)度任務(wù)的返回結(jié)果,發(fā)送任務(wù)處理結(jié)果至客戶端;
[0142]具體地,將步驟3518中所述批處理業(yè)務(wù)的處理結(jié)果信息可以通過(guò)消息中心發(fā)送至客戶端;所述結(jié)果信息包含但不限于接收消息的節(jié)點(diǎn)號(hào),以及相關(guān)的機(jī)構(gòu)用戶信息等;所述客戶端包含但不限于指定機(jī)構(gòu)或者指定用戶等。
[0143]參見(jiàn)圖6,是本發(fā)明實(shí)施例提供的異步批處理調(diào)度方法之預(yù)約調(diào)度方法的流程示意圖,該方法包括:
[0144]步驟3600:接收批處理業(yè)務(wù)請(qǐng)求,統(tǒng)計(jì)計(jì)算所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量;
[0145]具體地,接收批處理業(yè)務(wù)的請(qǐng)求,可以是前端設(shè)備傳送的批處理業(yè)務(wù),也可以是接收其他系統(tǒng)傳送的批處理業(yè)務(wù),也可以是通過(guò)終端或各種電子渠道實(shí)時(shí)觸發(fā)的聯(lián)機(jī)事務(wù),來(lái)完成各種金融事務(wù)的處理;
[0146]批處理業(yè)務(wù)包含但不限于各種代收付、公積金歸集、匯繳、賬戶結(jié)息、登記簿處理、日結(jié)單、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)、保險(xiǎn)公司的保單受理、保費(fèi)續(xù)繳、理賠等;
[0147]批處理的業(yè)務(wù)特點(diǎn)為:(1) 一次業(yè)務(wù)請(qǐng)求處理的業(yè)務(wù)數(shù)據(jù)為批量(多筆)業(yè)務(wù)數(shù)據(jù);(2)業(yè)務(wù)處理的數(shù)據(jù)源不僅僅是單筆交易數(shù)據(jù)報(bào)文,有可能是數(shù)據(jù)文件。
[0148]步驟3602:當(dāng)判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值的結(jié)果為是時(shí),則分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型;
[0149]具體地,數(shù)據(jù)門(mén)限值可以根據(jù)以下條件之一或者相互自由組合進(jìn)行設(shè)置:處理所述批處理業(yè)務(wù)的設(shè)備性能、所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或者所述批處理業(yè)務(wù)的類型等,將所述交易處理數(shù)據(jù)量與所述數(shù)據(jù)門(mén)限值進(jìn)行比較判斷。
[0150]當(dāng)所述交易處理數(shù)據(jù)量大于所述數(shù)據(jù)門(mén)限值時(shí),登記所述批處理業(yè)務(wù)為異步批處理業(yè)務(wù),將所述批處理業(yè)務(wù)的交易上下文保存到數(shù)據(jù)庫(kù),等到異步任務(wù)調(diào)度主控進(jìn)行輪訓(xùn)調(diào)度執(zhí)行;異步批處理的業(yè)務(wù)類型包含但不限于賬戶結(jié)息、登記簿、日結(jié)單、公積金匯繳、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)等。
[0151]步驟3604:當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為預(yù)約任務(wù)時(shí),對(duì)所述預(yù)約任務(wù)根據(jù)調(diào)度時(shí)間進(jìn)行調(diào)度分析;
[0152]具體地,分析步驟3602中所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型,當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為預(yù)約任務(wù)時(shí),對(duì)所述預(yù)約任務(wù)根據(jù)調(diào)度時(shí)間進(jìn)行調(diào)度分析;所述預(yù)約任務(wù)包含但不限于公積金匯繳業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)、日結(jié)單等;根據(jù)批處理時(shí)間段的調(diào)度處理,可以將所述預(yù)約任務(wù)分為周期性任務(wù)和定時(shí)執(zhí)行任務(wù)。
[0153]步驟3606:當(dāng)根據(jù)調(diào)度時(shí)間將所述預(yù)約任務(wù)分為周期性任務(wù),對(duì)所述周期性任務(wù)進(jìn)行調(diào)度時(shí)間間隔設(shè)置;
[0154]具體地,當(dāng)步驟3604中根據(jù)調(diào)度時(shí)間將所述預(yù)約任務(wù)分為周期性任務(wù)時(shí),對(duì)所述周期性任務(wù)進(jìn)行調(diào)度時(shí)間間隔設(shè)置;所述周期性任務(wù)包含但不限于公積金匯繳業(yè)務(wù)等;所述時(shí)間間隔可以設(shè)定為5min或者Ih或者其他的任意時(shí)長(zhǎng)的時(shí)間間隔。
[0155]步驟S608:對(duì)所述異步批處理業(yè)務(wù)相隔所述調(diào)度時(shí)間間隔進(jìn)行周期性輪訓(xùn)調(diào)度執(zhí)行;
[0156]具體地,根據(jù)步驟S606中所設(shè)置的時(shí)間間隔,在間隔所述調(diào)度時(shí)間間隔對(duì)所述預(yù)約任務(wù)進(jìn)行周期性輪訓(xùn)調(diào)度執(zhí)行,例如,每隔5min進(jìn)行輪訓(xùn)調(diào)度執(zhí)行公積金匯繳業(yè)務(wù),或者每隔Ih進(jìn)行輪訓(xùn)調(diào)度執(zhí)行公積金匯繳業(yè)務(wù),或者設(shè)定的其他時(shí)長(zhǎng)的時(shí)間間隔進(jìn)行輪訓(xùn)調(diào)度執(zhí)行預(yù)約任務(wù)。
[0157]步驟S610:當(dāng)根據(jù)調(diào)度時(shí)間將所述預(yù)約任務(wù)分為定時(shí)執(zhí)行任務(wù),對(duì)所述定時(shí)執(zhí)行任務(wù)進(jìn)行調(diào)度允許時(shí)間段設(shè)置;
[0158]具體地,當(dāng)步驟S604中根據(jù)調(diào)度時(shí)間將所述預(yù)約任務(wù)分為定時(shí)執(zhí)行任務(wù)時(shí),對(duì)所述定時(shí)執(zhí)行任務(wù)進(jìn)行允許時(shí)間段設(shè)置;所述定時(shí)執(zhí)行任務(wù)包含但不限于大報(bào)文傳輸業(yè)務(wù)、日結(jié)單等;所述允許時(shí)間段可以設(shè)定為(14:00-15:00)或者(20:00-22:00)或者其他的任意允許時(shí)間段。
[0159]步驟S612:對(duì)所述異步批處理在所述允許時(shí)間段內(nèi)進(jìn)行定時(shí)業(yè)務(wù)執(zhí)行處理;
[0160]具體地,根據(jù)步驟S610中所設(shè)置的調(diào)度允許時(shí)間段,在所述允許時(shí)間段內(nèi)對(duì)所述預(yù)約任務(wù)進(jìn)行定時(shí)調(diào)度執(zhí)行,例如,在(14:00-16:00)時(shí)間段對(duì)報(bào)文傳輸業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理,或者在(20:00-22:00)時(shí)間段內(nèi)對(duì)日結(jié)單業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理等。
[0161]步驟S614:發(fā)送任務(wù)處理結(jié)果至客戶端;
[0162]具體地,將步驟S608或者步驟S612中所述批處理業(yè)務(wù)的處理結(jié)果信息可以通過(guò)消息中心發(fā)送至客戶端;所述結(jié)果信息包含但不限于接收消息的節(jié)點(diǎn)號(hào),以及相關(guān)的機(jī)構(gòu)用戶信息等;所述客戶端包含但不限于指定機(jī)構(gòu)或者指定用戶等。
[0163]參見(jiàn)圖7,是本發(fā)明實(shí)施例提供的異步批處理調(diào)度系統(tǒng)示意圖,其中,如圖7所示,該異步批處理調(diào)度系統(tǒng)70包括:接收模塊700、計(jì)算模塊702、判斷模塊704、異步分析模塊706、實(shí)時(shí)調(diào)度模塊708、異步調(diào)度模塊710,其中
[0164]接收模塊700用于接收批處理業(yè)務(wù)的請(qǐng)求,可以是前端設(shè)備傳送的批處理業(yè)務(wù),也可以是接收其他系統(tǒng)傳送的批處理業(yè)務(wù),也可以是通過(guò)終端或各種電子渠道實(shí)時(shí)觸發(fā)的聯(lián)機(jī)事務(wù),來(lái)完成各種金融事務(wù)的處理;批處理業(yè)務(wù)包含但不限于各種代收付、公積金歸集、匯繳、賬戶結(jié)息、登記簿處理、日結(jié)單、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)、保險(xiǎn)公司的保單受理、保費(fèi)續(xù)繳、理賠等;
[0165]批處理的業(yè)務(wù)特點(diǎn)為:(I) 一次業(yè)務(wù)請(qǐng)求處理的業(yè)務(wù)數(shù)據(jù)為批量(多筆)業(yè)務(wù)數(shù)據(jù);(2)業(yè)務(wù)處理的數(shù)據(jù)源不僅僅是單筆交易數(shù)據(jù)報(bào)文,有可能是數(shù)據(jù)文件;
[0166]計(jì)算模塊702用于統(tǒng)計(jì)計(jì)算接收模塊700接收的所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量,所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量包含所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或所述批處理業(yè)務(wù)的類型等;
[0167]判斷模塊704用于判斷所述計(jì)算模塊702計(jì)算的所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值;所述數(shù)據(jù)門(mén)限值可以根據(jù)以下條件之一或者相互自由組合進(jìn)行設(shè)置:處理所述批處理業(yè)務(wù)的設(shè)備性能、所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或所述批處理業(yè)務(wù)的類型等,將所述交易處理數(shù)據(jù)量與所述數(shù)據(jù)門(mén)限值進(jìn)行比較判斷;
[0168]異步分析模塊706用于當(dāng)所述判斷模塊704輸出為是時(shí),分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型;所述批處理業(yè)務(wù)的類型包含但不限于各種代收付、公積金歸集、匯繳、賬戶結(jié)息、登記簿處理、日結(jié)單、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)、保險(xiǎn)公司的保單受理、保費(fèi)續(xù)繳、理賠等;
[0169]實(shí)時(shí)調(diào)度模塊708用于當(dāng)所述異步分析模塊706根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理;
[0170]異步調(diào)度模塊710用于當(dāng)異步分析模塊706根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理。
[0171]參見(jiàn)圖8,是本發(fā)明實(shí)施例提供的批處理調(diào)度系統(tǒng)示意圖,其中,如圖8所示,批處理調(diào)度系統(tǒng)80包括:接收模塊800、計(jì)算模塊802、判斷模塊804、異步分析模塊806、聯(lián)機(jī)處理模塊808、實(shí)時(shí)調(diào)度模塊810、異步調(diào)度模塊812、預(yù)約任務(wù)模塊814、優(yōu)先管理模塊816、消息推送模塊818,其中
[0172]接收模塊800用于接收批處理業(yè)務(wù)的請(qǐng)求,可以是前端設(shè)備傳送的批處理業(yè)務(wù),也可以是接收其他系統(tǒng)傳送的批處理業(yè)務(wù),也可以是通過(guò)終端或各種電子渠道實(shí)時(shí)觸發(fā)的聯(lián)機(jī)事務(wù),來(lái)完成各種金融事務(wù)的處理;批處理業(yè)務(wù)包含但不限于各種代收付、公積金歸集、匯繳、賬戶結(jié)息、登記簿處理、日結(jié)單、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)、保險(xiǎn)公司的保單受理、保費(fèi)續(xù)繳、理賠等;
[0173]批處理的業(yè)務(wù)特點(diǎn)為:(1) 一次業(yè)務(wù)請(qǐng)求處理的業(yè)務(wù)數(shù)據(jù)為批量(多筆)業(yè)務(wù)數(shù)據(jù);(2)業(yè)務(wù)處理的數(shù)據(jù)源不僅僅是單筆交易數(shù)據(jù)報(bào)文,有可能是數(shù)據(jù)文件;
[0174]計(jì)算模塊802用于統(tǒng)計(jì)計(jì)算接收模塊800接收的所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量,所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量包含所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或所述批處理業(yè)務(wù)的類型等;
[0175]判斷模塊804用于判斷所述計(jì)算模塊802計(jì)算的所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值;所述數(shù)據(jù)門(mén)限值可以根據(jù)以下條件之一或者相互自由組合進(jìn)行設(shè)置:處理所述批處理業(yè)務(wù)的設(shè)備性能、所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或所述批處理業(yè)務(wù)的類型等,將所述交易處理數(shù)據(jù)量與所述數(shù)據(jù)門(mén)限值進(jìn)行比較判斷;
[0176]異步分析模塊806用于當(dāng)所述判斷模塊804輸出為是時(shí),分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型;所述批處理業(yè)務(wù)的類型包含但不限于各種代收付、公積金歸集、匯繳、賬戶結(jié)息、登記簿處理、日結(jié)單、生產(chǎn)各種報(bào)表、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)、保險(xiǎn)公司的保單受理、保費(fèi)續(xù)繳、理賠等;
[0177]聯(lián)機(jī)處理模塊808用于當(dāng)所述判斷模塊804輸出為否時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行聯(lián)機(jī)交易處理,聯(lián)機(jī)處理模塊808處理的所述異步批處理業(yè)務(wù)即為聯(lián)機(jī)批處理業(yè)務(wù);聯(lián)機(jī)批處理業(yè)務(wù)的交易數(shù)據(jù)量一般比較小,處理時(shí)間也相對(duì)較短;聯(lián)機(jī)批處理業(yè)務(wù)對(duì)日間實(shí)時(shí)性要求較高,支持等待聯(lián)機(jī)交易返回結(jié)果。聯(lián)機(jī)交易模塊808處理的聯(lián)機(jī)業(yè)務(wù)包含但不限于各種代收付、保險(xiǎn)公司的保單受理、保費(fèi)續(xù)繳、理賠等;
[0178]聯(lián)機(jī)批處理業(yè)務(wù)的業(yè)務(wù)特點(diǎn)為:(1) 一次業(yè)務(wù)請(qǐng)求處理的業(yè)務(wù)數(shù)據(jù)為批量(多筆)業(yè)務(wù)數(shù)據(jù);(2)業(yè)務(wù)處理的數(shù)據(jù)源不僅僅是單筆交易數(shù)據(jù)報(bào)文,有可能是數(shù)據(jù)文件;
[0179]實(shí)時(shí)調(diào)度模塊810當(dāng)所述異步分析模塊806根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理;分析異步分析模塊806中所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型,當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理,所述實(shí)時(shí)調(diào)度任務(wù)包含但不限于登記簿、生產(chǎn)各種報(bào)表等;實(shí)時(shí)調(diào)度任務(wù)主要是針對(duì)業(yè)務(wù)處理量比較少的業(yè)務(wù),可以支持聯(lián)機(jī)等待異步處理的返回結(jié)果,可以將所述異步批處理交易模擬成聯(lián)機(jī)交易;
[0180]異步調(diào)度模塊812用于當(dāng)異步分析模塊806根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理;分析異步分析模塊806中所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型,當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理,所述異步調(diào)度任務(wù)包含但不限于賬戶結(jié)息、日結(jié)單、公積金匯繳、批量文件業(yè)務(wù)、大報(bào)文傳輸業(yè)務(wù)等;異步調(diào)度任務(wù)主要針對(duì)業(yè)務(wù)處理量較大的業(yè)務(wù),可以將所述異步批處理業(yè)務(wù)存儲(chǔ)于內(nèi)存中,可以等待任務(wù)調(diào)度主控程序進(jìn)行輪訓(xùn)查詢并執(zhí)行;
[0181]預(yù)約任務(wù)模塊814用于當(dāng)異步分析模塊806根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為預(yù)約任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行預(yù)約任務(wù)處理;預(yù)約任務(wù)根據(jù)調(diào)度時(shí)間,可以將任務(wù)分為周期性任務(wù)和定時(shí)執(zhí)行任務(wù);執(zhí)行周期性任務(wù),需對(duì)所述周期性任務(wù)進(jìn)行調(diào)度時(shí)間間隔設(shè)置,可以對(duì)所述異步批處理業(yè)務(wù)相隔所述調(diào)度時(shí)間間隔進(jìn)行周期性輪訓(xùn)調(diào)度執(zhí)行;執(zhí)行定時(shí)執(zhí)行任務(wù)時(shí),需對(duì)所述定時(shí)執(zhí)行任務(wù)進(jìn)行調(diào)度允許時(shí)間段設(shè)置,可以對(duì)所述異步批處理在所述允許時(shí)間段內(nèi)進(jìn)行定時(shí)業(yè)務(wù)執(zhí)行處理;
[0182]優(yōu)先管理模塊816用于當(dāng)所述實(shí)時(shí)調(diào)度模塊810對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理或者當(dāng)所述異步調(diào)度模塊812對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理時(shí),根據(jù)所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型和/或業(yè)務(wù)需要,可以對(duì)所述異步批處理業(yè)務(wù)進(jìn)行優(yōu)先級(jí)別設(shè)定;
[0183]消息推送模塊818用于在所述實(shí)時(shí)調(diào)度模塊810對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理結(jié)束后或者在所述異步調(diào)度模塊812對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理結(jié)束后,或者在所述預(yù)約任務(wù)模塊814對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理結(jié)束后,可以通過(guò)異步消息隊(duì)列向客戶端推送任務(wù)處理結(jié)果。
[0184]參見(jiàn)圖9,是本發(fā)明實(shí)施例提供的實(shí)時(shí)調(diào)度模塊示意圖,其中,如圖9所示,實(shí)時(shí)調(diào)度模塊810包括:實(shí)時(shí)任務(wù)創(chuàng)建單元8100、實(shí)時(shí)任務(wù)池單元8102、實(shí)時(shí)主控單元8104、實(shí)時(shí)滿載單元8106、數(shù)據(jù)切片單元8108、數(shù)據(jù)并發(fā)單元8110,其中
[0185]實(shí)時(shí)任務(wù)創(chuàng)建單元8100,用于根據(jù)所述異步批處理業(yè)務(wù)創(chuàng)建相應(yīng)的實(shí)時(shí)調(diào)度任務(wù);創(chuàng)建所述異步批處理業(yè)務(wù)首先需要對(duì)實(shí)時(shí)調(diào)度任務(wù)進(jìn)行定義,所述實(shí)時(shí)調(diào)度任務(wù)定義是管理預(yù)約任務(wù),將預(yù)約任務(wù)保存到實(shí)時(shí)調(diào)度任務(wù)定義表中;實(shí)時(shí)調(diào)度任務(wù)生成調(diào)度主控會(huì)根據(jù)實(shí)時(shí)調(diào)度任務(wù)定義表中的數(shù)據(jù)來(lái)生成執(zhí)行任務(wù)。另外,對(duì)已經(jīng)定義生產(chǎn)的實(shí)時(shí)調(diào)度異步任務(wù),通過(guò)實(shí)時(shí)調(diào)度任務(wù)注冊(cè)類進(jìn)行管理,即通過(guò)數(shù)據(jù)庫(kù)表注冊(cè)實(shí)時(shí)調(diào)度任務(wù)完成后,進(jìn)行調(diào)度并立即執(zhí)行實(shí)時(shí)調(diào)度任務(wù);
[0186]實(shí)時(shí)調(diào)度任務(wù)注冊(cè)過(guò)程具體如下:可以根據(jù)每個(gè)實(shí)時(shí)調(diào)度任務(wù)類型調(diào)用相應(yīng)的己0八方法(其中(10八方法用于添加異步任務(wù)),可以往實(shí)時(shí)調(diào)度任務(wù)數(shù)據(jù)表和參數(shù)表寫(xiě)入任務(wù)相關(guān)信息;然后對(duì)于需要即刻執(zhí)行的任務(wù)可以調(diào)用方法(用于添加并執(zhí)行異步任務(wù)),該方法會(huì)先將狀態(tài)為執(zhí)行中的任務(wù)信息插入到任務(wù)信息表和參數(shù)表中,并可以通過(guò)對(duì)應(yīng)的任務(wù)執(zhí)行器直接調(diào)度執(zhí)行該任務(wù);
[0187]實(shí)時(shí)任務(wù)池單元8102,用于將所述實(shí)時(shí)任務(wù)創(chuàng)建單元8100創(chuàng)建的所述實(shí)時(shí)調(diào)度任務(wù)分配到相應(yīng)的實(shí)時(shí)調(diào)度任務(wù)池;
[0188]實(shí)時(shí)主控單元8104,用于將實(shí)時(shí)任務(wù)池單元8102分配到所述實(shí)時(shí)調(diào)度任務(wù)池中的所述實(shí)時(shí)調(diào)度任務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理,并將所述異步批處理業(yè)務(wù)的處理結(jié)果進(jìn)行實(shí)時(shí)返回;
[0189]實(shí)時(shí)滿載單元8106,用于判斷實(shí)時(shí)任務(wù)池單元8102中所述的實(shí)時(shí)調(diào)度任務(wù)池是否滿載,當(dāng)判斷出實(shí)時(shí)調(diào)度任務(wù)池滿載,則拒絕調(diào)度執(zhí)行所述實(shí)時(shí)調(diào)度任務(wù);
[0190]數(shù)據(jù)切片單元8108,用于將所述異步批處理業(yè)務(wù)的數(shù)據(jù)進(jìn)行數(shù)據(jù)切片處理,得到所述異步批處理業(yè)務(wù)的切片數(shù)據(jù);
[0191]數(shù)據(jù)切片與任務(wù)調(diào)度邏輯無(wú)關(guān),主要為批任務(wù)作業(yè)中大批量切片處理提供規(guī)范和支持。數(shù)據(jù)切片機(jī)制可以包括:數(shù)據(jù)切片邏輯接口(IChunkHandlerCD)、數(shù)據(jù)切片處理接口(IChunk)和一個(gè)批量數(shù)據(jù)處理邏輯BaseChunkJob。其中,批量數(shù)據(jù)處理邏輯BaseChunkJob根據(jù)用戶傳入的IChunkHandler〈T>對(duì)象,循環(huán)獲取并處理批量數(shù)據(jù)的一個(gè)切片;記錄處理接口(IChunkHandler〈T>)負(fù)責(zé)從數(shù)據(jù)源獲取當(dāng)前待處理的數(shù)據(jù)切片;數(shù)據(jù)切片處理接口(IChunk)負(fù)責(zé)提供某數(shù)據(jù)切片的處理邏輯。另外,批量數(shù)據(jù)處理邏輯BaseChunkJob是批量數(shù)據(jù)切片處理的入口類,BaseChunkJob依賴于IChunkHandler〈T>對(duì)象實(shí)現(xiàn)對(duì)數(shù)據(jù)切片的獲??;記錄處理接口 IChunkHandler〈T>需要開(kāi)發(fā)人員實(shí)現(xiàn)3個(gè)方法:hasNextChunk O , nextChunk O 和 close()方法,具體為:hasNextChunk O 返回 boolean 值,判斷數(shù)據(jù)源是否處理完畢;neXtChunk()返回下一個(gè)待處理數(shù)據(jù)切片;cl0Se()用于批處理完畢后關(guān)閉數(shù)據(jù)源、文件等資源。IChunk包含方法:handleData(), handleDataO方法負(fù)責(zé)實(shí)現(xiàn)對(duì)一個(gè)切片的數(shù)據(jù)進(jìn)行處理的邏輯;
[0192]數(shù)據(jù)并發(fā)單元8110,用于對(duì)所述數(shù)據(jù)切片單元得到的所述切片數(shù)據(jù)進(jìn)行多線程批任務(wù)的并發(fā)處理。
[0193]參見(jiàn)圖10,是本發(fā)明實(shí)施例提供的異步調(diào)度模塊示意圖,其中,如圖10所示,異步調(diào)度模塊812包括:異步任務(wù)創(chuàng)建單元8120、異步任務(wù)池單元8122、異步主控單元8124、異步滿載單元8126、數(shù)據(jù)切片單元8128、數(shù)據(jù)并發(fā)單元81210,其中
[0194]異步任務(wù)創(chuàng)建單元8120,用于根據(jù)所述異步批處理業(yè)務(wù)創(chuàng)建相應(yīng)的異步調(diào)度任務(wù);創(chuàng)建所述異步批處理業(yè)務(wù)首先需要對(duì)異步調(diào)度任務(wù)進(jìn)行定義,所述異步調(diào)度任務(wù)定義是管理預(yù)約任務(wù),將預(yù)約任務(wù)保存到異步調(diào)度任務(wù)定義表中;異步調(diào)度任務(wù)生成調(diào)度主控會(huì)根據(jù)任務(wù)定義表中的數(shù)據(jù)來(lái)生成執(zhí)行任務(wù)。另外,對(duì)已經(jīng)定義生產(chǎn)的異步調(diào)度任務(wù),通過(guò)異步調(diào)度任務(wù)注冊(cè)類進(jìn)行管理,即通過(guò)數(shù)據(jù)庫(kù)表注冊(cè)異步任務(wù)完成后,進(jìn)行調(diào)度并立即執(zhí)行異步任務(wù)。
[0195]異步調(diào)度任務(wù)注冊(cè)過(guò)程具體如下:可以根據(jù)每個(gè)異步調(diào)度任務(wù)類型調(diào)用相應(yīng)的doAddTask方法(其中doAddTask方法用于添加異步任務(wù)),可以往異步調(diào)度任務(wù)數(shù)據(jù)表和參數(shù)表寫(xiě)入任務(wù)相關(guān)信息;然后對(duì)于需要即刻執(zhí)行的任務(wù)可以調(diào)用doExecTask方法(用于添加并執(zhí)行異步任務(wù)),該方法會(huì)先將狀態(tài)為執(zhí)行中的任務(wù)息插入任務(wù)息表和參數(shù)表,并可以通過(guò)對(duì)應(yīng)的任務(wù)執(zhí)行器(TaskHandler)直接調(diào)度執(zhí)行該任務(wù)。
[0196]異步任務(wù)池單元8122,用于將所述異步任務(wù)創(chuàng)建單元8120創(chuàng)建的所述實(shí)時(shí)調(diào)度任務(wù)分配到相應(yīng)的實(shí)時(shí)調(diào)度任務(wù)池;
[0197]異步主控單元8124,用于將異步任務(wù)池單元8122分配到所述異步調(diào)度任務(wù)池中的所述異步調(diào)度任務(wù)進(jìn)行異步調(diào)度處理,并將所述異步批處理業(yè)務(wù)的處理結(jié)果進(jìn)行返回;
[0198]異步滿載單元8126,用于判斷異步調(diào)度任務(wù)池是否滿載,
[0199]當(dāng)判斷出異步調(diào)度任務(wù)池滿載,則采取以下處理方式:直接拒絕調(diào)度執(zhí)行本條異步調(diào)度任務(wù),或者通過(guò)發(fā)起線程來(lái)處理所述異步調(diào)度任務(wù),或者忽略處理所述異步調(diào)度任務(wù);異步調(diào)度任務(wù)池管理一個(gè)線程池和等待隊(duì)列,當(dāng)異步調(diào)度任務(wù)池滿載時(shí),直接拒絕處理所述異步調(diào)度任務(wù),將所述異步調(diào)度任務(wù)保存在等待線性隊(duì)列中,等待異步任務(wù)池不再滿載時(shí),將本條異步批處理任務(wù)存儲(chǔ)于異步調(diào)度任務(wù)池中,等待下次調(diào)度執(zhí)行;或者通過(guò)發(fā)起線程來(lái)處理所述異步調(diào)度任務(wù),所述異步批處理任務(wù)不被存儲(chǔ)于異步調(diào)度任務(wù)池等待后續(xù)調(diào)度執(zhí)行,而是由發(fā)起調(diào)度執(zhí)行的發(fā)起線程隊(duì)列進(jìn)行直接處理;或者忽略處理所述異步調(diào)度任務(wù),忽略所述異步批處理任務(wù),拋棄處理;
[0200]數(shù)據(jù)切片單元8128,用于將所述異步批處理業(yè)務(wù)的數(shù)據(jù)進(jìn)行數(shù)據(jù)切片處理,得到所述異步批處理業(yè)務(wù)的切片數(shù)據(jù);
[0201]數(shù)據(jù)切片與任務(wù)調(diào)度邏輯無(wú)關(guān),主要為批任務(wù)作業(yè)中大批量切片處理提供規(guī)范和支持。數(shù)據(jù)切片機(jī)制可以包括:數(shù)據(jù)切片邏輯接口數(shù)據(jù)切片處理接口(101111110和一個(gè)批量數(shù)據(jù)處理邏輯8%60!皿0匕其中,批量數(shù)據(jù)處理邏輯88860111111^013根據(jù)用戶傳入的對(duì)象,循環(huán)獲取并處理批量數(shù)據(jù)的一個(gè)切片;記錄處理接口負(fù)責(zé)從數(shù)據(jù)源獲取當(dāng)前待處理的數(shù)據(jù)切片;數(shù)據(jù)切片處理接口(101111110負(fù)責(zé)提供某數(shù)據(jù)切片的處理邏輯。另外,批量數(shù)據(jù)處理邏輯88860111111^013是批量數(shù)據(jù)切片處理的入口類,081860111111^013依賴于1011111紐對(duì)象實(shí)現(xiàn)對(duì)數(shù)據(jù)切片的獲??;記錄處理接口需要開(kāi)發(fā)人員實(shí)現(xiàn)3個(gè)方法:1188^6X1:0111111^ () , 116X1:0111111^ ()和。1?386 ()方法,具體為返回 1^0016811 值,判斷數(shù)據(jù)源是否處理完畢皿“)返回下一個(gè)待處理數(shù)據(jù)切片$1086()用于批處理完畢后關(guān)閉數(shù)據(jù)源、文件等資源。1(?皿^包含方法:112111(1160211:21(), 11811(1161)81:8()方法負(fù)責(zé)實(shí)現(xiàn)對(duì)一個(gè)切片的數(shù)據(jù)進(jìn)行處理的邏輯。
[0202]數(shù)據(jù)并發(fā)單元81210,用于對(duì)所述數(shù)據(jù)切片單元得到的所述切片數(shù)據(jù)進(jìn)行多線程批任務(wù)的并發(fā)處理。
[0203]參見(jiàn)圖11,是本發(fā)明實(shí)施例提供的預(yù)約任務(wù)模塊示意圖,其中,如圖11所示,預(yù)約任務(wù)模塊814包括:周期性任務(wù)單元8140、定時(shí)任務(wù)單元8142,其中
[0204]周期性任務(wù)單元8140,用于執(zhí)行周期性任務(wù),首先需對(duì)所述周期性任務(wù)進(jìn)行調(diào)度時(shí)間間隔設(shè)置,對(duì)所述異步批處理業(yè)務(wù)相隔所述調(diào)度時(shí)間間隔進(jìn)行周期性輪訓(xùn)調(diào)度執(zhí)行;所述周期性任務(wù)包含但不限于公積金匯繳業(yè)務(wù)等;所述時(shí)間間隔可以設(shè)定為501??!或者11!或者其他的任意時(shí)長(zhǎng)的時(shí)間間隔。根據(jù)周期性任務(wù)單元8140所設(shè)置的時(shí)間間隔,在間隔所述調(diào)度時(shí)間間隔對(duì)所述預(yù)約任務(wù)進(jìn)行周期性輪訓(xùn)調(diào)度執(zhí)行,例如,每隔501??!進(jìn)行輪訓(xùn)調(diào)度執(zhí)行公積金匯繳業(yè)務(wù),或者每隔1卜進(jìn)行輪訓(xùn)調(diào)度執(zhí)行公積金匯繳業(yè)務(wù),或者設(shè)定的其他時(shí)長(zhǎng)的時(shí)間間隔進(jìn)行輪訓(xùn)調(diào)度執(zhí)行預(yù)約任務(wù)。
[0205]定時(shí)任務(wù)單元8142,用于執(zhí)行定時(shí)執(zhí)行任務(wù),首先需對(duì)所述定時(shí)執(zhí)行任務(wù)進(jìn)行調(diào)度允許時(shí)間段設(shè)置,對(duì)所述異步批處理在所述允許時(shí)間段內(nèi)進(jìn)行定時(shí)業(yè)務(wù)執(zhí)行處理;所述定時(shí)執(zhí)行任務(wù)包含但不限于大報(bào)文傳輸業(yè)務(wù)、日結(jié)單等;所述允許時(shí)間段可以設(shè)定為(14:00-15:00)或者(20:00-22:00)或者其他的任意允許時(shí)間段。根據(jù)定時(shí)任務(wù)單元8142所設(shè)置的調(diào)度允許時(shí)間段,在所述允許時(shí)間段內(nèi)對(duì)所述預(yù)約任務(wù)進(jìn)行定時(shí)調(diào)度執(zhí)行,例如,在(14:00-16:00)時(shí)間段對(duì)報(bào)文傳輸業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理,或者在(20:00-22:00)時(shí)間段內(nèi)對(duì)日結(jié)單業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理等。
[0206]綜上所述,通過(guò)實(shí)施本發(fā)明實(shí)施例,提供一種異步批處理調(diào)度方法和系統(tǒng),本發(fā)明實(shí)施例進(jìn)一步具有以下有益效果:
[0207]1、本發(fā)明提供了一種異步批處理調(diào)度方法,通過(guò)提供統(tǒng)一的批量業(yè)務(wù)開(kāi)發(fā)框架,封裝公共邏輯,制定開(kāi)發(fā)規(guī)范,統(tǒng)一聯(lián)機(jī)業(yè)務(wù)和批處理業(yè)務(wù)的處理方式,易于開(kāi)發(fā)擴(kuò)展、運(yùn)維、監(jiān)控和異常處理;
[0208]2、根據(jù)業(yè)務(wù)類型的不同,異步批處理調(diào)度系統(tǒng)對(duì)不同類型的業(yè)務(wù)進(jìn)行分發(fā)處理,不同的任務(wù)種類可以對(duì)應(yīng)不同的任務(wù)處理池,有效提高了資源使用率;
[0209]3、實(shí)現(xiàn)批處理進(jìn)行時(shí)間段控制,通過(guò)參數(shù)化配置,對(duì)于一些對(duì)實(shí)時(shí)性要求不高的批量處理任務(wù),通過(guò)定義預(yù)約任務(wù),將任務(wù)放在系統(tǒng)空閑時(shí)段運(yùn)行,以保障系統(tǒng)在實(shí)時(shí)交易高峰時(shí)段有最大資源的使用權(quán);對(duì)于一些實(shí)時(shí)要求較高的批量業(yè)務(wù),可以不受此允許時(shí)間段的控制,進(jìn)行實(shí)時(shí)調(diào)度。
[0210]4、提供數(shù)據(jù)切片機(jī)制,支持對(duì)批量業(yè)務(wù)數(shù)據(jù)的分片處理,并對(duì)業(yè)務(wù)的分片數(shù)據(jù)提供并發(fā)執(zhí)行處理,加快批量業(yè)務(wù)處理的速度;
[0211]5、提供了統(tǒng)一的異步處理機(jī)制,使任務(wù)受理與批量處理分離,任務(wù)受理之后通過(guò)異步機(jī)制實(shí)現(xiàn)任務(wù)處理,減少對(duì)系統(tǒng)資源的占用;同時(shí)支持任務(wù)異步處理的聯(lián)機(jī)返回等待,可以支持聯(lián)機(jī)和異步處理的相互轉(zhuǎn)換。
[0212]本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過(guò)計(jì)算機(jī)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤(pán)、只讀存儲(chǔ)記憶體(0651(1-01117 1611101*7,^01)或隨機(jī)存儲(chǔ)記憶體^00688161110等。
[0213]以上所揭露的僅為本發(fā)明一種較佳實(shí)施例而已,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范圍,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例的全部或部分流程,并依本發(fā)明權(quán)利要求所作的等同變化,仍屬于發(fā)明所涵蓋的范圍。
【權(quán)利要求】
1.一種異步批處理調(diào)度方法,其特征在于,包括: 接收批處理業(yè)務(wù)請(qǐng)求,統(tǒng)計(jì)計(jì)算所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量; 判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值,若為是,則分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型; 當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理;當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理。
2.如權(quán)利要求1所述的方法,其特征在于,所述判斷所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值之后還包括: 若為否,則對(duì)所述批處理業(yè)務(wù)進(jìn)行聯(lián)機(jī)批處理。
3.如權(quán)利要求1所述的方法,其特征在于,所述數(shù)據(jù)門(mén)限值根據(jù)以下至少一項(xiàng)條件進(jìn)行設(shè)置: 處理所述批處理業(yè)務(wù)的設(shè)備性能、所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或所述批處理業(yè)務(wù)的種類。
4.如權(quán)利要求1所述的方法,其特征在于,所述對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理包括: 根據(jù)所述異步批處理業(yè)務(wù)創(chuàng)建相應(yīng)的實(shí)時(shí)調(diào)度任務(wù); 將所述實(shí)時(shí)調(diào)度任務(wù)分配到相應(yīng)的實(shí)時(shí)調(diào)度任務(wù)池; 將所述分配到所述實(shí)時(shí)調(diào)度任務(wù)池的所述實(shí)時(shí)調(diào)度任務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理,并將所述異步批處理業(yè)務(wù)的處理結(jié)果進(jìn)行實(shí)時(shí)返回。
5.如權(quán)利要求1或4所述的方法,其特征在于,所述對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理包括: 當(dāng)判斷出實(shí)時(shí)調(diào)度任務(wù)池滿載,則拒絕調(diào)度執(zhí)行所述實(shí)時(shí)調(diào)度任務(wù)。
6.如權(quán)利要求1所述的方法,其特征在于,所述對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理包括: 根據(jù)所述異步批處理業(yè)務(wù)創(chuàng)建相應(yīng)的異步調(diào)度任務(wù); 將所述異步調(diào)度任務(wù)分配到相應(yīng)的異步調(diào)度任務(wù)池; 將所述分配到所述異步調(diào)度任務(wù)池的所述異步調(diào)度任務(wù)進(jìn)行異步調(diào)度處理,并將所述異步批處理業(yè)務(wù)的處理結(jié)果進(jìn)行返回。
7.如權(quán)利要求1或6所述的方法,其特征在于,所述對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理包括: 當(dāng)判斷出異步調(diào)度任務(wù)池滿載,則拒絕處理所述異步調(diào)度任務(wù),或者通過(guò)發(fā)起線程來(lái)處理所述異步調(diào)度任務(wù),或者忽略處理所述異步調(diào)度任務(wù)。
8.如權(quán)利要求1所述的方法,其特征在于,所述對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理或者對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理,包括: 將所述異步批處理業(yè)務(wù)的數(shù)據(jù)進(jìn)行數(shù)據(jù)切片處理,得到所述異步批處理業(yè)務(wù)的切片數(shù)據(jù); 對(duì)所述切片數(shù)據(jù)進(jìn)行多線程批任務(wù)的并發(fā)處理。
9.如權(quán)利要求1所述的方法,其特征在于,方法還包括: 根據(jù)所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型和/或業(yè)務(wù)需要,對(duì)所述異步批處理業(yè)務(wù)進(jìn)行優(yōu)先級(jí)別設(shè)定; 所述對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理或者對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理包括: 按照所述設(shè)定的優(yōu)先級(jí)別,優(yōu)先對(duì)優(yōu)先級(jí)別高的異步批處理業(yè)務(wù)進(jìn)行調(diào)度處理。
10.如權(quán)利要求1所述的方法,其特征在于,方法還包括: 當(dāng)根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為預(yù)約任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行預(yù)約任務(wù)處理; 所述對(duì)所述異步批處理業(yè)務(wù)進(jìn)行預(yù)約任務(wù)處理包括: 當(dāng)根據(jù)調(diào)度時(shí)間將所述預(yù)約任務(wù)分為周期性任務(wù)時(shí),對(duì)所述周期性任務(wù)進(jìn)行調(diào)度時(shí)間間隔設(shè)置,對(duì)所述異步批處理業(yè)務(wù)相隔所述調(diào)度時(shí)間間隔進(jìn)行周期性輪訓(xùn)調(diào)度執(zhí)行; 當(dāng)根據(jù)調(diào)度時(shí)間將所述預(yù)約任務(wù)分為定時(shí)執(zhí)行任務(wù)時(shí),對(duì)所述定時(shí)執(zhí)行任務(wù)進(jìn)行調(diào)度允許時(shí)間段設(shè)置,對(duì)所述異步批處理在所述允許時(shí)間段內(nèi)進(jìn)行定時(shí)業(yè)務(wù)執(zhí)行處理。
11.如權(quán)利要求1所述的方法,其特征在于,方法還包括: 在所述對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理結(jié)束后或者對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理結(jié)束后,通過(guò)異步消息隊(duì)列向客戶端推送任務(wù)處理結(jié)果。
12.—種異步批處理調(diào)度系統(tǒng),其特征在于,包括: 接收模塊,接收批處理業(yè)務(wù)請(qǐng)求; 計(jì)算模塊,用于統(tǒng)計(jì)計(jì)算所述批處理業(yè)務(wù)的交易處理數(shù)據(jù)量; 判斷模塊,用于判斷所述計(jì)算模塊計(jì)算的所述交易處理數(shù)據(jù)量是否大于數(shù)據(jù)門(mén)限值; 異步分析模塊,用于當(dāng)所述判斷模塊輸出為是時(shí),分析所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型; 實(shí)時(shí)調(diào)度模塊,用于當(dāng)所述異步分析模塊根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為實(shí)時(shí)調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理; 異步調(diào)度模塊,用于當(dāng)異步分析模塊根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為異步調(diào)度任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理。
13.如權(quán)利要求12所述的系統(tǒng),其特征在于,系統(tǒng)還包括: 聯(lián)機(jī)處理模塊,用于當(dāng)所述判斷模塊輸出為否時(shí),對(duì)所述批處理業(yè)務(wù)進(jìn)行聯(lián)機(jī)批處理。
14.如權(quán)利要求12所述的系統(tǒng),其特征在于,所述數(shù)據(jù)門(mén)限值根據(jù)以下至少一項(xiàng)條件進(jìn)行設(shè)置: 處理所述批處理業(yè)務(wù)的設(shè)備性能、所述批處理業(yè)務(wù)的復(fù)雜度、所述批處理業(yè)務(wù)的數(shù)據(jù)量或所述批處理業(yè)務(wù)的種類等。
15.如權(quán)利要求12所述的系統(tǒng),其特征在于,所述實(shí)時(shí)調(diào)度模塊包括: 實(shí)時(shí)任務(wù)創(chuàng)建單元,用于根據(jù)所述異步批處理業(yè)務(wù)創(chuàng)建相應(yīng)的實(shí)時(shí)調(diào)度任務(wù); 實(shí)時(shí)任務(wù)池單元,用于將所述實(shí)時(shí)任務(wù)創(chuàng)建單元?jiǎng)?chuàng)建的所述實(shí)時(shí)調(diào)度任務(wù)分配到相應(yīng)的實(shí)時(shí)調(diào)度任務(wù)池; 實(shí)時(shí)主控單元,用于將分配到所述實(shí)時(shí)調(diào)度任務(wù)池中的所述實(shí)時(shí)調(diào)度任務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理,并將所述異步批處理業(yè)務(wù)的處理結(jié)果進(jìn)行實(shí)時(shí)返回。
16.如權(quán)利要求12或15所述的系統(tǒng),其特征在于,所述實(shí)時(shí)調(diào)度模塊包括: 實(shí)時(shí)滿載單元,用于當(dāng)判斷出實(shí)時(shí)調(diào)度任務(wù)池滿載,則拒絕調(diào)度執(zhí)行所述實(shí)時(shí)調(diào)度任務(wù)。
17.如權(quán)利要求12所述的系統(tǒng),其特征在于,所述異步調(diào)度模塊包括: 異步任務(wù)創(chuàng)建單元,用于根據(jù)所述異步批處理業(yè)務(wù)創(chuàng)建相應(yīng)的異步調(diào)度任務(wù); 異步任務(wù)池單元,用于將所述異步任務(wù)創(chuàng)建單元?jiǎng)?chuàng)建的所述異步調(diào)度任務(wù)分配到相應(yīng)的異步調(diào)度任務(wù)池; 異步主控單元,用于將分配到所述異步調(diào)度任務(wù)池中的所述異步調(diào)度任務(wù)進(jìn)行異步調(diào)度處理,并將所述異步批處理業(yè)務(wù)的處理結(jié)果進(jìn)行返回。
18.如權(quán)利要求12或17所述的系統(tǒng),其特征在于,所述異步調(diào)度模塊還包括: 異步滿載單元,用于當(dāng)判斷出異步調(diào)度任務(wù)池滿載,則拒絕處理所述異步調(diào)度任務(wù),或者通過(guò)發(fā)起線程來(lái)處理所述異步調(diào)度任務(wù),或者忽略處理所述異步調(diào)度任務(wù)。
19.如權(quán)利要求12所述的系統(tǒng),其特征在于,所述實(shí)時(shí)調(diào)度模塊或所述異步調(diào)度模塊包括: 數(shù)據(jù)切片單元,用于將所述異步批處理業(yè)務(wù)的數(shù)據(jù)進(jìn)行數(shù)據(jù)切片處理,得到所述異步批處理業(yè)務(wù)的切片數(shù)據(jù); 數(shù)據(jù)并發(fā)單元,用于對(duì)所述數(shù)據(jù)切片單元得到的所述切片數(shù)據(jù)進(jìn)行多線程批任務(wù)的并發(fā)處理。
20.如權(quán)利要求12所述的系統(tǒng),其特征在于,系統(tǒng)還包括: 優(yōu)先級(jí)管理模塊,用于當(dāng)所述實(shí)時(shí)調(diào)度模塊對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理或者當(dāng)所述異步調(diào)度模塊對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理時(shí),根據(jù)所述異步批處理業(yè)務(wù)的業(yè)務(wù)類型和/或業(yè)務(wù)需要,對(duì)所述異步批處理業(yè)務(wù)進(jìn)行優(yōu)先級(jí)別設(shè)定; 所述實(shí)時(shí)調(diào)度模塊對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理或者所述異步調(diào)度模塊對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理包括: 按照所述優(yōu)先級(jí)管理模塊設(shè)定的優(yōu)先級(jí)別,優(yōu)先對(duì)優(yōu)先級(jí)別高的異步批處理業(yè)務(wù)進(jìn)行調(diào)度處理。
21.如權(quán)利要求12所述的系統(tǒng),其特征在于,系統(tǒng)還包括: 預(yù)約任務(wù)模塊,用于當(dāng)異步分析模塊根據(jù)業(yè)務(wù)類型分析出所述異步批處理業(yè)務(wù)為預(yù)約任務(wù)時(shí),對(duì)所述異步批處理業(yè)務(wù)進(jìn)行預(yù)約任務(wù)處理; 所述預(yù)約任務(wù)模塊包括: 周期性任務(wù)單元,用于當(dāng)所述預(yù)約任務(wù)模塊根據(jù)調(diào)度時(shí)間將所述預(yù)約任務(wù)分為周期性任務(wù)時(shí),對(duì)所述周期性任務(wù)進(jìn)行調(diào)度時(shí)間間隔設(shè)置,對(duì)所述異步批處理業(yè)務(wù)相隔所述調(diào)度時(shí)間間隔進(jìn)行周期性輪訓(xùn)調(diào)度執(zhí)行; 定時(shí)任務(wù)單元,用于當(dāng)所述預(yù)約任務(wù)模塊根據(jù)調(diào)度時(shí)間將所述預(yù)約任務(wù)分為定時(shí)執(zhí)行任務(wù)時(shí),對(duì)所述定時(shí)執(zhí)行任務(wù)進(jìn)行調(diào)度允許時(shí)間段設(shè)置,對(duì)所述異步批處理在所述允許時(shí)間段內(nèi)進(jìn)行定時(shí)業(yè)務(wù)執(zhí)行處理。
22.如權(quán)利要求12所述的系統(tǒng),其特征在于,系統(tǒng)還包括: 消息推送模塊,用于在所述實(shí)時(shí)調(diào)度模塊對(duì)所述異步批處理業(yè)務(wù)進(jìn)行實(shí)時(shí)調(diào)度處理結(jié)束后或者在所述異步調(diào)度模塊對(duì)所述異步批處理業(yè)務(wù)進(jìn)行異步調(diào)度處理結(jié)束后,通過(guò)異步消息隊(duì)列向客戶端推送任務(wù)處理結(jié)果。
【文檔編號(hào)】G06F9/50GK104407922SQ201410594848
【公開(kāi)日】2015年3月11日 申請(qǐng)日期:2014年10月29日 優(yōu)先權(quán)日:2014年10月29日
【發(fā)明者】伍輝, 吳澤童, 羅新仁, 周小偉 申請(qǐng)人:中國(guó)建設(shè)銀行股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
武山县| 区。| 浮山县| 来安县| 伽师县| 翁牛特旗| 滕州市| 柳林县| 湾仔区| 民丰县| 肥乡县| 仁寿县| 边坝县| 秦皇岛市| SHOW| 平和县| 钟祥市| 鄂州市| 仁化县| 许昌县| 澳门| 新平| 寿光市| 虞城县| 阿拉尔市| 美姑县| 商城县| 论坛| 衢州市| 景谷| 威海市| 平山县| 永嘉县| 罗定市| 吉林省| 祁门县| 嘉祥县| 双柏县| 波密县| 华蓥市| 扬中市|