一種交易處理中的數(shù)據(jù)庫操作超時處理方法和裝置制造方法
【專利摘要】本發(fā)明公開一種交易處理中的數(shù)據(jù)庫操作超時處理方法和裝置。方法包括:對一筆交易處理的數(shù)據(jù)庫操作進(jìn)行計時,當(dāng)該筆交易處理的數(shù)據(jù)庫操作時間超出預(yù)置時間時,在指定的時間內(nèi),會進(jìn)行中斷處理,并根據(jù)預(yù)先設(shè)定的策略,選擇進(jìn)入下一筆交易處理的數(shù)據(jù)庫操作或選擇進(jìn)入故障交易處理或選擇退出與該超出預(yù)置時間的數(shù)據(jù)庫操作對應(yīng)的應(yīng)用。
【專利說明】一種交易處理中的數(shù)據(jù)庫操作超時處理方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及金融電信IT系統(tǒng)的交易處理機(jī)制,并且尤其涉及交易處理中的數(shù)據(jù)庫操作超時處理方法和裝置。
【背景技術(shù)】
[0002]對任何一個金融電信IT系統(tǒng)來說,交易的連續(xù)、穩(wěn)定、高效是衡量其性能的重要指標(biāo)?,F(xiàn)代金融電信的核心系統(tǒng)都需要借助大型數(shù)據(jù)庫來實現(xiàn)交易處理。大型數(shù)據(jù)庫往往比較穩(wěn)定,交易在絕大部分情況下是可以被正常處理。盡管如此,當(dāng)數(shù)據(jù)庫操作超時,如果不及時處理會導(dǎo)致交易大量堆積,進(jìn)而影響到后續(xù)的交易處理。
[0003][0003]現(xiàn)有技術(shù)中的金融電信IT系統(tǒng)不具備處理上述這類異常的能力,一旦發(fā)生了這類故障,在交易量巨大的情況下,往往會產(chǎn)生雪崩效應(yīng)。常見的處理方法是使系統(tǒng)暫停對外服務(wù),等故障處理完畢后再開啟服務(wù)。然而,在這種情況下,超時交易持續(xù)積累,到達(dá)一定量時會導(dǎo)致系統(tǒng)崩潰,而且暫停對外服務(wù)會大幅降低用戶的體驗。
【發(fā)明內(nèi)容】
[0004]根據(jù)本發(fā)明的一個目的,公開一種交易處理中的數(shù)據(jù)庫操作超時處理方法,該方法包括:
對一筆交易處理的數(shù)據(jù)庫操作進(jìn)行計時,
當(dāng)該筆交易處理的數(shù)據(jù)庫操作時間超出預(yù)置時間時,中斷該操作,生成錯誤報告,以及執(zhí)行預(yù)先設(shè)定的策略。
[0005]優(yōu)選地,所述預(yù)先設(shè)定的策略是在指定的時間內(nèi),選擇進(jìn)入下一筆交易處理的數(shù)據(jù)庫操作。
[0006]優(yōu)選地,所述預(yù)先設(shè)定的策略是選擇進(jìn)行故障交易處理。
[0007]優(yōu)選地,所述預(yù)先設(shè)定的策略是退出與該超出預(yù)置時間的數(shù)據(jù)庫操作對應(yīng)的應(yīng)用。
[0008]優(yōu)選地,通過在一筆交易處理的數(shù)據(jù)庫操作的前后設(shè)置超時監(jiān)測模塊來進(jìn)行計時。
[0009]根據(jù)本發(fā)明的另一個目的,公開一種交易處理中的數(shù)據(jù)庫操作超時處理裝置,該裝置包括計時模塊和超時控制模塊,
所述計時模塊用于對一筆交易處理的數(shù)據(jù)庫操作進(jìn)行計時,
所述超時控制模塊被配置成:
當(dāng)該筆交易處理的數(shù)據(jù)庫操作時間超出預(yù)置時間時,中斷該操作,生成錯誤報告,執(zhí)行預(yù)先設(shè)定的策略。
[0010]優(yōu)選地,所述執(zhí)行預(yù)先設(shè)定的策略是在指定的時間內(nèi),選擇進(jìn)入下一筆交易處理的數(shù)據(jù)庫操作。
[0011]優(yōu)選地,所述執(zhí)行預(yù)先設(shè)定的策略是生成錯誤報告,選擇進(jìn)行故障交易處理。[0012]優(yōu)選地,所述執(zhí)行預(yù)先設(shè)定的策略是選擇退出與該超出預(yù)置時間的數(shù)據(jù)庫操作對應(yīng)的應(yīng)用。
[0013]優(yōu)選地,所述計時模塊包括超時監(jiān)測模塊,其中,
所述超時監(jiān)測模塊被設(shè)置在所述一筆交易處理的數(shù)據(jù)庫操作的前后來進(jìn)行計時。
[0014]根據(jù)本發(fā)明的另一個目的,公開一種金融電信IT系統(tǒng),包括應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器,所述數(shù)據(jù)庫服務(wù)器包括上述的數(shù)據(jù)庫操作超時處理裝置。
[0015]本發(fā)明的一個優(yōu)勢在于,通過在交易處理的過程中嵌入超時監(jiān)測機(jī)制,在第一時間捕捉并處理數(shù)據(jù)庫的超時異常,避免交易的大量堆積,同時能夠盡快地進(jìn)行這類異常的處理。
[0016]本發(fā)明的另一個優(yōu)勢在于,根據(jù)本發(fā)明的一個或多個特點,提高了系統(tǒng)的內(nèi)部性能,增強(qiáng)了系統(tǒng)的健壯性,提高了系統(tǒng)的高可用能力。在不影響正常交易的前提下,避免發(fā)生超時交易的大量堆積、避免中斷對外服務(wù),從而更好的保障交易的持續(xù)、穩(wěn)定與高效。
【專利附圖】
【附圖說明】
[0017]在參照附圖閱讀了本發(fā)明的【具體實施方式】以后,本領(lǐng)域技術(shù)人員將會更清楚地了解本發(fā)明的各個方面。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解的是,這些附圖僅僅用于配合【具體實施方式】說明本發(fā)明的技術(shù)方案,而并非意在對本發(fā)明的保護(hù)范圍構(gòu)成限制。
[0018]圖1是傳統(tǒng)交易處理流程的示意圖。
[0019]圖2是根據(jù)本發(fā)明的一個特定實施例的交易處理中的數(shù)據(jù)庫操作超時處理方法示意圖。
[0020]圖3是根據(jù)本發(fā)明實施例的交易處理中的數(shù)據(jù)庫操作超時處理裝置結(jié)構(gòu)示意圖。
[0021]圖4是根據(jù)本發(fā)明實施例的交易處理中的數(shù)據(jù)庫操作超時處理方法步驟示意圖。
【具體實施方式】
[0022]下面參照附圖,對本發(fā)明的【具體實施方式】作進(jìn)一步的詳細(xì)描述。在下面的描述中,為了解釋的目的,陳述許多具體細(xì)節(jié)以便提供對實施例的一個或多個方面的透徹理解。然而,對于本領(lǐng)域技術(shù)人員可以顯而易見的是,可以這些具體細(xì)節(jié)的較少程度來實踐各實施例的一個或多個方面。因此下面的描述不被視為局限性的,而是通過所附權(quán)利要求來限定保護(hù)范圍。另外,盡管可以僅關(guān)于若干實施方式中的一個公開了實施例的特定特征或方面,但可針對任何給定的或特定的應(yīng)用所期望和有利的那樣,這種特征或方面可與其他實施方式的一種或多個其他特征或方面相組合。
[0023]現(xiàn)參考圖1,圖1是傳統(tǒng)交易處理流程的示意圖。如圖所示,在數(shù)據(jù)庫環(huán)境初始化后,進(jìn)入服務(wù)處理等待。在接收到交易服務(wù)請求后開始進(jìn)行交易處理,處理每筆交易時,需要進(jìn)行數(shù)據(jù)庫操作(本文省略了與交易處理相關(guān)的業(yè)務(wù)邏輯的部分,因其與本發(fā)明的主題并不緊密相關(guān)),一筆交易的數(shù)據(jù)庫操作完成后(這里略去其他非數(shù)據(jù)庫操作的描述)結(jié)束本次服務(wù),再次進(jìn)入服務(wù)處理等待,直到接收到下一筆交易,重復(fù)上述過程。然而,在服務(wù)過程中,一旦對于其中一筆交易的數(shù)據(jù)庫操作發(fā)生超時,整個服務(wù)就會“掛”在數(shù)據(jù)庫操作這個“點”上,進(jìn)入服務(wù)掛起狀態(tài),導(dǎo)致無法處理下一筆交易,繼而造成后續(xù)的交易持續(xù)堆積,甚至使整個系統(tǒng)癱瘓。[0024]圖2是根據(jù)本發(fā)明的一個特定實施例的交易處理中的數(shù)據(jù)庫操作超時處理方法示意圖。如圖所示,在該實施例中對數(shù)據(jù)庫操作進(jìn)行計時,在數(shù)據(jù)庫操作操作前打開計時,在操作完成后關(guān)閉計時。當(dāng)進(jìn)入下一次據(jù)庫操作時,重復(fù)上述過程。在對數(shù)據(jù)庫計時過程中,判斷當(dāng)前數(shù)據(jù)庫操作的時間流逝,當(dāng)超出預(yù)置時間時,服務(wù)進(jìn)入中斷操作,生成錯誤報告,根據(jù)配置的策略,可選擇跳出當(dāng)前交易,繼續(xù)處理下一筆交易,或可選擇進(jìn)行故障交易處理,還可以選擇退出與該超出預(yù)置時間的數(shù)據(jù)庫操作對應(yīng)的應(yīng)用。如圖所示,在該特定示例中,首先,中斷該超出預(yù)置時間的數(shù)據(jù)庫操作,然后,生成錯誤報告,最后,根據(jù)預(yù)定處理策略進(jìn)行后續(xù)處理。本發(fā)明的一個優(yōu)勢在于,當(dāng)數(shù)據(jù)庫操作超時,可以選擇繼續(xù)處理下一筆交易,對外服務(wù)仍然可用,不會停止或者等待。
[0025]圖3是根據(jù)本發(fā)明實施例的交易處理中的數(shù)據(jù)庫操作超時處理裝置結(jié)構(gòu)示意圖。如圖所示,該裝置包括計時模塊和超時控制模塊。計時模塊用于對一筆交易處理的數(shù)據(jù)庫操作進(jìn)行計時。超時控制模塊被配置成,當(dāng)該筆交易處理的數(shù)據(jù)庫操作時間超出預(yù)置時間時,在指定的時間內(nèi),可選擇進(jìn)入下一筆交易處理的數(shù)據(jù)庫操作或可選擇進(jìn)行故障交易處理,還可以選擇退出與該超出預(yù)置時間的數(shù)據(jù)庫操作對應(yīng)的應(yīng)用。在一個或多個示例中,上述預(yù)置時間和指定時間可以作為超時控制參數(shù),在數(shù)據(jù)庫初始化時從配置文件被讀取,或者超時控制參數(shù)也可以被直接配置在超時控制模塊中。在一個或多個示例中,計時模塊可以是進(jìn)程級的定時器,或者計時模塊也可以是數(shù)據(jù)庫產(chǎn)品級的超時機(jī)制,或者是兩者的統(tǒng)一。在一個或多個示例中,計時模塊可以包括超時監(jiān)測模塊,超時監(jiān)測模塊被設(shè)置在所述一筆交易處理的數(shù)據(jù)庫操作的前后來進(jìn)行計時。例如,超時檢測模塊可以被嵌入到交易處理模塊中的具體數(shù)據(jù)庫操作之前,作為時間計算的起點,以及被嵌入到交易處理模塊中的具體數(shù)據(jù)庫操作之后,作為時間計算的終點,在此范圍外,超時檢測模塊將不起作用,不會影響該交易的其他非數(shù)據(jù)庫操作處理邏輯。
[0026]在另一實施例中,所述超時控制模塊還被配置成,當(dāng)該一筆交易處理的數(shù)據(jù)庫操作時間超出預(yù)置時間時,還進(jìn)行故障交易處理。在故障交易處理被觸發(fā)后,可以進(jìn)入預(yù)先設(shè)定的故障交易處理流程,預(yù)先設(shè)定的處理流程可以是啟用備庫、切換系統(tǒng)、進(jìn)程重啟、故障排查等。在一個例子中,故障交易處理包括啟用備份數(shù)據(jù)庫,將所有應(yīng)用切換到備份數(shù)據(jù)庫上,此后交易將在備份數(shù)據(jù)庫上得以處理。根據(jù)本發(fā)明的數(shù)據(jù)庫操作超時處理裝置可以被設(shè)置在包括應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器的任何金融電信IT系統(tǒng)的數(shù)據(jù)庫服務(wù)器中。
[0027]圖4是根據(jù)本發(fā)明實施例的交易處理中的數(shù)據(jù)庫操作超時處理方法步驟示意圖。如圖所示,方法包括兩個步驟。
[0028]在第一個步驟中,對一筆交易處理的數(shù)據(jù)庫操作進(jìn)行計時,
在第二個步驟中,當(dāng)該筆交易處理的數(shù)據(jù)庫操作時間超出預(yù)置時間時,中斷該操作,生成錯誤報告,執(zhí)行預(yù)先設(shè)定的策略。
[0029]可選地,在第二個步驟中,所述執(zhí)行預(yù)先設(shè)定的策略是在指定的時間內(nèi),選擇進(jìn)入下一筆交易處理的數(shù)據(jù)庫操作。
[0030]可選地,在第二個步驟中,所述執(zhí)行預(yù)先設(shè)定的策略是生成錯誤報告,選擇進(jìn)行故障交易處理。
[0031]可選地,在第二個步驟中,所述執(zhí)行預(yù)先設(shè)定的策略是選擇退出與該超出預(yù)置時間的數(shù)據(jù)庫操作對應(yīng)的應(yīng)用。[0032]通過以上實施方式的描述,本領(lǐng)域中的普通技術(shù)人員能夠理解,在不偏離本發(fā)明的精神和范圍的情況下,還可以對本發(fā)明的【具體實施方式】作各種變更和替換。這些變更和替換都落在本發(fā)明權(quán)利要求書所限定的范圍內(nèi)。
【權(quán)利要求】
1.一種交易處理中的數(shù)據(jù)庫操作超時處理方法,其特征在于,該方法包括: 對一筆交易處理的數(shù)據(jù)庫操作進(jìn)行計時, 當(dāng)該筆交易處理的數(shù)據(jù)庫操作時間超出預(yù)置時間時,中斷該操作,生成錯誤報告,以及執(zhí)行預(yù)先設(shè)定的策略。
2.如權(quán)利要求1所述的方法,其特征在于,所述預(yù)先設(shè)定的策略是在指定的時間內(nèi),選擇進(jìn)入下一筆交易處理的數(shù)據(jù)庫操作。
3.如權(quán)利要求1所述的方法,其特征在于, 所述預(yù)先設(shè)定的策略是選擇進(jìn)行故障交易處理。
4.如權(quán)利要求1所述的方法,其特征在于, 所述預(yù)先設(shè)定的策略是退出與該超出預(yù)置時間的數(shù)據(jù)庫操作對應(yīng)的應(yīng)用。
5.如權(quán)利要求1所述的方法,其特征在于, 通過在一筆交易處理的數(shù)據(jù)庫操作的前后設(shè)置超時監(jiān)測模塊來進(jìn)行計時。
6.一種交易處理中的數(shù)據(jù)庫操作超時處理裝置,其特征在于, 該裝置包括計時模塊和超時控制模塊, 所述計時模塊用于對一筆交易處理的數(shù)據(jù)庫操作進(jìn)行計時, 所述超時控制模塊被配置成: 當(dāng)該筆交易處理的數(shù)據(jù)庫操作時間超出預(yù)置時間時,中斷該操作,生成錯誤報告,執(zhí)行預(yù)先設(shè)定的策略。
7.如權(quán)利要求6所述的裝置,其特征在于, 所述執(zhí)行預(yù)先設(shè)定的策略是在指定的時間內(nèi),選擇進(jìn)入下一筆交易處理的數(shù)據(jù)庫操作。
8.如權(quán)利要求6所述的裝置,其特征在于, 所述執(zhí)行預(yù)先設(shè)定的策略是生成錯誤報告,選擇進(jìn)行故障交易處理。
9.如權(quán)利要求6所述的裝置,其特征在于,所述執(zhí)行預(yù)先設(shè)定的策略是選擇退出與該超出預(yù)置時間的數(shù)據(jù)庫操作對應(yīng)的應(yīng)用。
10.如權(quán)利要求6所述的裝置,其特征在于, 所述計時模塊包括超時監(jiān)測模塊,其中, 所述超時監(jiān)測模塊被設(shè)置在所述一筆交易處理的數(shù)據(jù)庫操作的前后來進(jìn)行計時。
11.一種金融電信IT系統(tǒng),包括應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器,其特征在于,所述數(shù)據(jù)庫服務(wù)器包括如權(quán)利要求6-10所述的數(shù)據(jù)庫操作超時處理裝置。
【文檔編號】G06F11/07GK103678020SQ201210346018
【公開日】2014年3月26日 申請日期:2012年9月18日 優(yōu)先權(quán)日:2012年9月18日
【發(fā)明者】茅毓銘, 楊燕明 申請人:中國銀聯(lián)股份有限公司