是本發(fā)明實施例提供的一種進行數(shù)據(jù)庫服務(wù)器通信管理的方法流程圖;
[0051 ]圖2是本發(fā)明實施例提供的一種數(shù)據(jù)庫系統(tǒng)的框架圖;
[0052]圖3是本發(fā)明實施例提供的一種切換數(shù)據(jù)庫服務(wù)器的示意圖;
[0053]圖4是本發(fā)明實施例提供的一種記錄數(shù)據(jù)庫服務(wù)器狀態(tài)的示意圖;
[0054]圖5是本發(fā)明實施例提供的一種記錄數(shù)據(jù)庫服務(wù)器狀態(tài)的示意圖;
[0055]圖6是本發(fā)明實施例提供的一種記錄數(shù)據(jù)庫服務(wù)器狀態(tài)的示意圖;
[0056]圖7是本發(fā)明實施例提供的一種進行數(shù)據(jù)庫服務(wù)器通信管理的裝置結(jié)構(gòu)圖;
[0057]圖8是本發(fā)明實施例提供的一種進行數(shù)據(jù)庫服務(wù)器通信管理的裝置結(jié)構(gòu)圖;
[0058]圖9是本發(fā)明實施例提供的一種進行數(shù)據(jù)庫服務(wù)器通信管理的裝置結(jié)構(gòu)圖;
[0059]圖10是本發(fā)明實施例提供的一種進行數(shù)據(jù)庫服務(wù)器通信管理的裝置結(jié)構(gòu)圖;
[0060]圖11是本發(fā)明實施例提供的一種應(yīng)用服務(wù)器的裝置結(jié)構(gòu)圖。
【具體實施方式】
[0061]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進一步地詳細描述。
[0062]實施例一
[0063]本發(fā)明實施例提供了一種進行數(shù)據(jù)庫服務(wù)器通信管理的方法,該方法可以應(yīng)用于數(shù)據(jù)庫系統(tǒng)中,如圖2所示,數(shù)據(jù)庫系統(tǒng)包括至少一個應(yīng)用服務(wù)器和多個數(shù)據(jù)庫服務(wù)器,每個應(yīng)用服務(wù)器分別與每個數(shù)據(jù)庫服務(wù)器建立數(shù)據(jù)連接,每個應(yīng)用服務(wù)器分別存儲有各自的用于切換數(shù)據(jù)庫服務(wù)器的切換條件。其中,應(yīng)用服務(wù)器可以是終端上安裝的網(wǎng)絡(luò)應(yīng)用程序?qū)?yīng)的后臺服務(wù)器,數(shù)據(jù)庫服務(wù)器可以是用來存儲網(wǎng)絡(luò)應(yīng)用程序產(chǎn)生的網(wǎng)絡(luò)業(yè)務(wù)數(shù)據(jù)的服務(wù)器。應(yīng)用服務(wù)器可以包括處理器、存儲器、傳輸部件,處理器可以用于進行下述流程中的切換數(shù)據(jù)庫服務(wù)器的處理,存儲器可以用于存儲下述處理過程中需要的數(shù)據(jù)以及產(chǎn)生的數(shù)據(jù),傳輸部件可以用于進行數(shù)據(jù)庫服務(wù)器通信管理過程中數(shù)據(jù)的接收與發(fā)送。數(shù)據(jù)庫服務(wù)器可以包括處理器、存儲器、傳輸部件,處理器可以用于進行下述流程中的切換數(shù)據(jù)庫服務(wù)器的處理,存儲器可以用于存儲下述處理過程中需要的數(shù)據(jù)以及產(chǎn)生的數(shù)據(jù),傳輸部件可以用于進行數(shù)據(jù)庫服務(wù)器通信管理過程中數(shù)據(jù)的接收與發(fā)送。
[0064]下面將結(jié)合【具體實施方式】,對圖1所示的處理流程進行詳細的說明,內(nèi)容可以如下:
[0065]步驟101,第一應(yīng)用服務(wù)器在將第一數(shù)據(jù)庫服務(wù)器記錄為執(zhí)行數(shù)據(jù)庫服務(wù)器的狀態(tài)下,與第一數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信的過程中,對通信失敗的事件進行統(tǒng)計。
[0066]在實施中,當(dāng)用戶在通過安裝在終端上的網(wǎng)絡(luò)應(yīng)用程序進行網(wǎng)絡(luò)業(yè)務(wù)時,會產(chǎn)生大量的網(wǎng)絡(luò)業(yè)務(wù)數(shù)據(jù),這些網(wǎng)絡(luò)業(yè)務(wù)數(shù)據(jù)會通過網(wǎng)絡(luò)發(fā)送到對應(yīng)的應(yīng)用服務(wù)器,即第一應(yīng)用服務(wù)器,進而存儲至相連的數(shù)據(jù)庫服務(wù)器中,即第一數(shù)據(jù)庫服務(wù)器。而第一應(yīng)用服務(wù)器與多個數(shù)據(jù)庫服務(wù)器建立數(shù)據(jù)連接,但同一時間只與一個數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信,并記錄該數(shù)據(jù)庫服務(wù)器為執(zhí)行數(shù)據(jù)庫服務(wù)器。其中,每個數(shù)據(jù)庫服務(wù)器內(nèi)存儲的數(shù)據(jù)是共享同步的,即可以認為第一數(shù)據(jù)庫服務(wù)器在接收到應(yīng)用服務(wù)器傳輸?shù)臄?shù)據(jù)后,會將數(shù)據(jù)傳輸給其它數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)同步,這樣,無論應(yīng)用服務(wù)器與那個數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信,都可以保證數(shù)據(jù)全面完整。此外,多個應(yīng)用服務(wù)器可以共用同一個數(shù)據(jù)庫服務(wù)器,即每個數(shù)據(jù)庫服務(wù)器中可以存儲多個應(yīng)用服務(wù)器傳輸?shù)臄?shù)據(jù),當(dāng)某個應(yīng)用服務(wù)器在對數(shù)據(jù)庫服務(wù)器中的數(shù)據(jù)進行讀寫時,不會影響其它應(yīng)用服務(wù)器與該數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)通信。
[0067]服務(wù)器側(cè)的技術(shù)人員可以在應(yīng)用服務(wù)器中輸入數(shù)據(jù)庫服務(wù)器的網(wǎng)絡(luò)地址和接入端口,應(yīng)用服務(wù)器則可以根據(jù)上述內(nèi)容與每個數(shù)據(jù)庫服務(wù)器創(chuàng)建數(shù)據(jù)連接,并可以默認與第一個可用的數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信。第一應(yīng)用服務(wù)器在與第一數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信的過程中,可能會出現(xiàn)數(shù)據(jù)讀寫失敗、數(shù)據(jù)庫服務(wù)器無響應(yīng)、數(shù)據(jù)格式錯誤等通信失敗的事件,第一應(yīng)用服務(wù)器則可以實時記錄通信失敗事件,對該類事件進行統(tǒng)計。
[0068]步驟102,當(dāng)通信失敗的次數(shù)滿足第一應(yīng)用服務(wù)器存儲的第一切換條件時,第一應(yīng)用服務(wù)器將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器。
[0069]在實施中,為了保證應(yīng)用程序的數(shù)據(jù)庫系統(tǒng)的高可用性能,應(yīng)用服務(wù)器與多個數(shù)據(jù)庫服務(wù)器保持連接,并隨時可以切換當(dāng)前進行數(shù)據(jù)通信的數(shù)據(jù)庫服務(wù)器至其它的數(shù)據(jù)庫服務(wù)器。而每個應(yīng)用服務(wù)器都存儲有各自的用于切換數(shù)據(jù)庫服務(wù)器的切換條件,如第一應(yīng)用服務(wù)器的切換條件為只要出現(xiàn)I次通信失敗事件就進行數(shù)據(jù)庫服務(wù)器切換,第二應(yīng)用服務(wù)器的切換條件為短時間內(nèi)連續(xù)出現(xiàn)10次通信失敗事件則進行數(shù)據(jù)庫服務(wù)器切換。當(dāng)?shù)谝粦?yīng)用服務(wù)器統(tǒng)計到的通信失敗事件的次數(shù)滿足存儲的第一切換條件時,則可以將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器,即停止與第一數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信,開始與第二數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信,如圖3所示。
[0070]可選的,上述切換條件可以具體為通信失敗次數(shù)達到預(yù)設(shè)次數(shù)閾值,相應(yīng)的,步驟102的處理可以如下:當(dāng)通信失敗的次數(shù)達到第一應(yīng)用服務(wù)器存儲的第一次數(shù)閾值時,第一應(yīng)用服務(wù)器將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器。
[0071]在實施中,當(dāng)?shù)谝粦?yīng)用服務(wù)器統(tǒng)計到的通信失敗事件的次數(shù)達到第一應(yīng)用服務(wù)器存儲的第一次數(shù)閾值時,則可以將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器,即停止與第一數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信,開始與第二數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信。
[0072]可選的,對通信失敗的次數(shù)的統(tǒng)計方式多種多樣,如下給出了兩種可行的方式:
[0073]方式一,當(dāng)通信失敗連續(xù)出現(xiàn)的次數(shù)達到第一應(yīng)用服務(wù)器存儲的第一次數(shù)閾值時,第一應(yīng)用服務(wù)器將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器。
[0074]在實施中,第一應(yīng)用服務(wù)器可以實時記錄與第一數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信的過程中,通信失敗出現(xiàn)的具體情況。當(dāng)出現(xiàn)一次通信失敗后,第一應(yīng)用服務(wù)器開始監(jiān)測與第一數(shù)據(jù)庫服務(wù)器的后續(xù)每一次通信,如果在之后的連續(xù)預(yù)設(shè)次數(shù)的數(shù)據(jù)通信均失敗,即通信失敗連續(xù)出現(xiàn)的次數(shù)已滿足第一應(yīng)用服務(wù)器存儲的第一切換條件,進而第一應(yīng)用服務(wù)器可以將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器。
[0075]方式二,當(dāng)在預(yù)設(shè)時長內(nèi)通信失敗的次數(shù)達到第一應(yīng)用服務(wù)器存儲的第一次數(shù)閾值時,第一應(yīng)用服務(wù)器將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器。
[0076]在實施中,在實施中,第一應(yīng)用服務(wù)器可以實時記錄與第一數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信的過程中,通信失敗出現(xiàn)的具體情況。當(dāng)出現(xiàn)一次通信失敗時,第一應(yīng)用服務(wù)器記錄此次通信失敗的時間,并在預(yù)設(shè)時長內(nèi)監(jiān)測與第一數(shù)據(jù)庫服務(wù)器的通信發(fā)生通信失敗的次數(shù),如果在預(yù)設(shè)時長內(nèi)通信失敗的次數(shù)達到第一應(yīng)用服務(wù)器存儲的第一次數(shù)閾值,即通信失敗連續(xù)出現(xiàn)的次數(shù)已滿足第一應(yīng)用服務(wù)器存儲的第一切換條件,進而第一應(yīng)用服務(wù)器可以將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器。
[0077]方式三,當(dāng)在預(yù)設(shè)周期內(nèi)通信失敗的次數(shù)達到第一應(yīng)用服務(wù)器存儲的第一次數(shù)閾值時,第一應(yīng)用服務(wù)器將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器。
[0078]在實施中,第一應(yīng)用服務(wù)器可以實時記錄與第一數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信的過程中,并周期性統(tǒng)計通信失敗出現(xiàn)的次數(shù)。如果在預(yù)設(shè)周期內(nèi),統(tǒng)計次數(shù)達到預(yù)設(shè)閾值,可認為已滿足第一應(yīng)用服務(wù)器存儲的第一切換條件,進而第一應(yīng)用服務(wù)器可以將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器;如果在預(yù)設(shè)周期內(nèi),統(tǒng)計次數(shù)沒有達到預(yù)設(shè)閾值,則通信失敗出現(xiàn)的次數(shù)統(tǒng)計清O。
[0079]可選的,應(yīng)用服務(wù)器可以對已創(chuàng)建連接的數(shù)據(jù)庫進行標(biāo)記,相應(yīng)的處理可以如下:第一應(yīng)用服務(wù)器將第一數(shù)據(jù)庫服務(wù)器記錄為執(zhí)行數(shù)據(jù)庫服務(wù)器,將除第一數(shù)據(jù)庫服務(wù)器之外的數(shù)據(jù)庫服務(wù)器記錄為備用數(shù)據(jù)庫服務(wù)器;
[0080]相應(yīng)的,步驟102的處理可以如下:當(dāng)通信失敗的次數(shù)滿足第一應(yīng)用服務(wù)器存儲的第一切換條件時,第一應(yīng)用服務(wù)器在備用數(shù)據(jù)庫服務(wù)器中選取第二數(shù)據(jù)庫服務(wù)器,將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器。
[0081]在實施中,在第一應(yīng)用服務(wù)器與第一數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信后,可以將第一數(shù)據(jù)庫服務(wù)器記錄為執(zhí)行數(shù)據(jù)庫服務(wù)器,表示第一數(shù)據(jù)庫服務(wù)器為當(dāng)前正在使用的數(shù)據(jù)庫服務(wù)器,同時可以將除第一數(shù)據(jù)庫服務(wù)器之外的其它已建立通信連接的數(shù)據(jù)庫服務(wù)器記錄為備用數(shù)據(jù)庫服務(wù)器,表示這些數(shù)據(jù)庫服務(wù)器為可切換的服務(wù)器。
[0082]當(dāng)?shù)谝粦?yīng)用服務(wù)器統(tǒng)計到的通信失敗事件的次數(shù)滿足存儲的第一切換條件時,則可以停止與第一數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信,并在備用數(shù)據(jù)庫服務(wù)器中選取第二數(shù)據(jù)庫服務(wù)器,進而可以開始與第二數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信,即將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器,如圖4所示。
[0083]可選的,第一應(yīng)用服務(wù)器將第一數(shù)據(jù)庫服務(wù)器記錄為故障數(shù)據(jù)庫服務(wù)器。
[0084]在實施中,當(dāng)?shù)谝粦?yīng)用服務(wù)器統(tǒng)計到的通信失敗事件的次數(shù)滿足存儲的第一切換條件時,則可以停止與第一數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信,并在備用數(shù)據(jù)庫服務(wù)器中選取第二數(shù)據(jù)庫服務(wù)器,進而可以開始與第二數(shù)據(jù)庫服務(wù)器進行數(shù)據(jù)通信,即將執(zhí)行數(shù)據(jù)庫服務(wù)器由第一數(shù)據(jù)庫服務(wù)器切換為第二數(shù)據(jù)庫服務(wù)器,同時將第一數(shù)