本發(fā)明涉及可用性云計(jì)算監(jiān)控系統(tǒng)及方法,尤其是涉及Genesys呼叫系統(tǒng)高可用性云計(jì)算監(jiān)控系統(tǒng)及方法。
背景技術(shù):我國呼叫中心產(chǎn)業(yè)從上世紀(jì)九十年代中期開始,經(jīng)過十多年的發(fā)展,已經(jīng)初具規(guī)模,形成了一定的地域性和行業(yè)分布特點(diǎn)。呼叫中心是充分利用現(xiàn)代通訊與計(jì)算機(jī)技術(shù),集語音、數(shù)據(jù)處理、計(jì)算機(jī)網(wǎng)絡(luò)和數(shù)據(jù)庫技術(shù)于一體,具有操作方式簡單、業(yè)務(wù)種類豐富、服務(wù)專業(yè)化/智能化,以及能實(shí)時(shí)顯示用戶信息等特點(diǎn),可以自動(dòng)靈活地處理大量各種不同的電話呼入和呼出業(yè)務(wù)和服務(wù)的運(yùn)營操作場所。然而分析客戶體驗(yàn)以及應(yīng)用需求可以看出,現(xiàn)有呼叫中心依然存在如下一些問題:(1)呼叫中心是車輛位置服務(wù)企業(yè)所必需的組成部分,然而其建設(shè)成本高,運(yùn)維管理難度大。(2)呼叫中心多以特種服務(wù)電話號(hào)碼的方式提供給客戶,系統(tǒng)統(tǒng)一管理困難。(3)呼叫中心可提供的位置服務(wù)種類很多,卻難以做到資源的共享利用。(4)呼叫中心出現(xiàn)突發(fā)事件、故障、遭受攻擊時(shí),系統(tǒng)的恢復(fù)是以天為單位的問題嚴(yán)重影響用戶服務(wù)的體驗(yàn)。云計(jì)算技術(shù)是當(dāng)前產(chǎn)業(yè)界、科技界、學(xué)術(shù)界乃至全社會(huì)關(guān)注的焦點(diǎn)和熱點(diǎn),已被廣泛認(rèn)為是新一代信息技術(shù)變革和業(yè)務(wù)應(yīng)用變革的核心。作為一種IT基礎(chǔ)設(shè)施交付和使用模式,云計(jì)算技術(shù)使信息技術(shù)更加簡單、易用,能夠更好地支持工作、生活的進(jìn)行。呼叫系統(tǒng)和云計(jì)算平臺(tái)是兩種當(dāng)前使用及研究廣泛的課題,然而學(xué)術(shù)界和產(chǎn)業(yè)界在如何將呼叫系統(tǒng)與云計(jì)算平臺(tái)結(jié)合充分利用兩者的優(yōu)勢方面依然空白,本發(fā)明專利正是立足于這一方面進(jìn)行研究的。
技術(shù)實(shí)現(xiàn)要素:本發(fā)明的上述技術(shù)問題主要是通過下述技術(shù)方案得以解決的:一種Genesys呼叫系統(tǒng)高可用性云計(jì)算監(jiān)控系統(tǒng),其特征在于,包括:事件隊(duì)列層:以事件的形式表示呼叫系統(tǒng)中的任何行為,因而系統(tǒng)中存在各種不同類型的事件,為了對(duì)這些事件進(jìn)行統(tǒng)一的管理和存儲(chǔ)而設(shè)置了事件隊(duì)列,事件驅(qū)動(dòng)機(jī)制主要分為三個(gè)步驟:首先是將事件放入全局的事件隊(duì)列中,然后按時(shí)間順序從事件隊(duì)列中取出事件,再通過事件指定的處理對(duì)象處理事件,在處理過程中可能會(huì)往事件隊(duì)列中加入新的事件;調(diào)度層:調(diào)度層是整個(gè)系統(tǒng)的核心,呼叫系統(tǒng)中任何行為都是以事件的形式表示的,系統(tǒng)中存在一個(gè)全局事件隊(duì)列,用于保存系統(tǒng)中的所有事件,調(diào)度層主要負(fù)責(zé)對(duì)全局事件隊(duì)列進(jìn)行操作,該層能夠保證事件有條不紊地被執(zhí)行,系統(tǒng)中的事件主要分為三種:呼叫感知事件、呼叫策略事件、呼叫執(zhí)行事件;邏輯層:邏輯層是整個(gè)系統(tǒng)的決策者,由其來決定從事件隊(duì)列中取出的事件的處理和運(yùn)行流程,邏輯層在處理事件時(shí)調(diào)用該事件對(duì)應(yīng)的執(zhí)行單元,按照一定的流程以確保系統(tǒng)的正常運(yùn)行;功能層:功能層是整個(gè)系統(tǒng)的底層,根據(jù)邏輯層的處理單元制定相應(yīng)的執(zhí)行單元,在物理機(jī)、虛擬機(jī)、Genesys呼叫系統(tǒng)三個(gè)層次進(jìn)行相應(yīng)處理并與虛擬機(jī)管理平臺(tái)進(jìn)行交互,以提供對(duì)上述幾層的支持,該層按功能可以分為三個(gè)層次:呼叫感知功能、呼叫策略功能、呼叫執(zhí)行功能。在上述的Genesys呼叫系統(tǒng)高可用性云計(jì)算監(jiān)控系統(tǒng),所述的邏輯層和功能層包括呼叫感知事件模塊、呼叫策略事件模塊和呼叫執(zhí)行事件模塊;系統(tǒng)根據(jù)呼叫感知事件模塊感知到的結(jié)果生成呼叫感知事件,呼叫策略事件模塊針對(duì)呼叫感知事件制定應(yīng)對(duì)策略,生成呼叫策略事件,之后根據(jù)恢復(fù)策略由呼叫執(zhí)行事件生成呼叫執(zhí)行事件,交互虛擬機(jī)管理平臺(tái)對(duì)虛擬機(jī)操作。在上述的Genesys呼叫系統(tǒng)高可用性云計(jì)算監(jiān)控系統(tǒng),所述呼叫感知事件模塊包括一個(gè)感知處理單元和感知執(zhí)行單元,所述感知處理單元設(shè)置在邏輯層,感知執(zhí)行單元設(shè)置在功能層;所述呼叫策略事件模塊包括一個(gè)策略處理單元和策略執(zhí)行單元,所述策略處理單元設(shè)置在邏輯層,策略執(zhí)行單元設(shè)置在功能層;所述呼叫執(zhí)行事件模塊包括一個(gè)執(zhí)行事件處理單元和一個(gè)執(zhí)行事件執(zhí)行單元,所述執(zhí)行事件處理單元設(shè)置在邏輯層,執(zhí)行事件執(zhí)行單元設(shè)置在功能層。一種Genesys呼叫系統(tǒng)高可用性云計(jì)算監(jiān)控方法,包括以下步驟:事件驅(qū)動(dòng)步驟:調(diào)度層根據(jù)事件的優(yōu)先級(jí)及時(shí)間戳實(shí)現(xiàn)事件調(diào)度過程,邏輯層的處理單元完成對(duì)事件的分析,并調(diào)用功能層的執(zhí)行單元進(jìn)行處理,最后由邏輯層向事件隊(duì)列插入下一步要發(fā)生的事件;基于上述事件驅(qū)動(dòng)步驟,輪詢感知步驟和主動(dòng)監(jiān)控步驟如下所示:輪詢感知步驟:采用輪詢方式監(jiān)測呼叫系統(tǒng)各個(gè)服務(wù)的運(yùn)行狀況,根據(jù)監(jiān)測結(jié)果由呼叫感知事件模塊生成呼叫感知事件,然后按照事件驅(qū)動(dòng)步驟依次由呼叫策略事件模塊和呼叫執(zhí)行事件模塊生成呼叫感知事件和呼叫執(zhí)行事件;無代理主動(dòng)監(jiān)控步驟:該步驟與輪詢感知步驟的不同之處是當(dāng)呼叫服務(wù)出現(xiàn)故障時(shí),系統(tǒng)能夠主動(dòng)感知到服務(wù)異常并將呼叫策略事件插入到事件隊(duì)列中,其后續(xù)步驟與輪詢感知步驟流程類似。在上述的Genesys呼叫系統(tǒng)高可用性云計(jì)算監(jiān)控方法,所述的步驟1中,事件驅(qū)動(dòng)步驟,包括以下子步驟:步驟1:將呼叫系統(tǒng)中的事件放入全局的事件隊(duì)列中;步驟2:根據(jù)事件的優(yōu)先級(jí)和時(shí)間戳,調(diào)度層從事件隊(duì)列中取出相應(yīng)事件;步驟3:邏輯層處理單元根據(jù)事件的參數(shù)信息確定事件的類型并調(diào)用執(zhí)行單元進(jìn)行相應(yīng)處理,在處理完成后向事件隊(duì)列中插入下一步要發(fā)生的事件;步驟4:重復(fù)步驟1至步驟3,使不斷向事件隊(duì)列中放入、取出事件并處理,整個(gè)事件機(jī)制保持不間斷運(yùn)行。在上述的Genesys呼叫系統(tǒng)高可用性云計(jì)算監(jiān)控方法,所述的輪詢感知步驟,包括以下子步驟:步驟1:調(diào)度層從事件隊(duì)列中取出時(shí)間戳最小的呼叫感知事件,并將其發(fā)送給呼叫感知事件模塊;步驟2:呼叫感知事件模塊的感知處理單元通過共享數(shù)據(jù)庫獲得相關(guān)信息,并使用虛擬機(jī)內(nèi)部進(jìn)程信息獲取方法獲取虛擬機(jī)內(nèi)相關(guān)進(jìn)程的信息;如果感知到呼叫應(yīng)用異常,則構(gòu)造相應(yīng)的事件并插入到事件隊(duì)列中;步驟3:調(diào)度層從事件隊(duì)列中獲取到步驟2中生成的事件后,發(fā)送給呼叫策略事件模塊;步驟4:呼叫策略事件模塊的策略處理單元查詢數(shù)據(jù)庫后獲取需要的信息,并構(gòu)造相應(yīng)的呼叫策略事件,最后構(gòu)造一個(gè)呼叫感知事件,將其插入到事件隊(duì)列中;步驟5:調(diào)度層將呼叫策略事件發(fā)送到呼叫執(zhí)行事件模塊;步驟6:呼叫執(zhí)行事件模塊的執(zhí)行事件處理單元根據(jù)收到的呼叫策略事件,構(gòu)造相應(yīng)的呼叫執(zhí)行事件,并把該事件插入消息隊(duì)列中;步驟7:調(diào)度層將呼叫執(zhí)行事件發(fā)送給虛擬機(jī)管理模塊;步驟8:虛擬機(jī)管理模塊根據(jù)接收到的呼叫執(zhí)行事件對(duì)虛擬機(jī)進(jìn)行相關(guān)操作,并把執(zhí)行結(jié)果發(fā)送到共享數(shù)據(jù)庫中。在上述的Genesys呼叫系統(tǒng)高可用性云計(jì)算監(jiān)控方法,所述的無代理主動(dòng)監(jiān)控事件步驟,包括以下子步驟:步驟1:當(dāng)Genesys呼叫系統(tǒng)出現(xiàn)異常時(shí),會(huì)產(chǎn)生相應(yīng)的系統(tǒng)調(diào)用(例如服務(wù)異常中斷系統(tǒng)刪除后綴為.snapshot快照日志文件),通過監(jiān)控系統(tǒng)API調(diào)用情況判斷呼叫系統(tǒng)狀態(tài);步驟2:如果檢測到虛擬機(jī)內(nèi)Genesys應(yīng)用異常,則采用KVM虛擬機(jī)陷入機(jī)制使虛擬機(jī)管理器報(bào)告虛擬機(jī)的異常信息;步驟3:若事件隊(duì)列與Genesys應(yīng)用在同一臺(tái)物理機(jī)上,則直接把恢復(fù)虛擬機(jī)的呼叫策略事件插入到事件隊(duì)列中;若兩者不在同一臺(tái)物理機(jī)上,則Genesys應(yīng)用(TCP客戶端)與事件隊(duì)列(TCP服務(wù)器端)建立網(wǎng)絡(luò)連接,將異常信息傳送到服務(wù)器端,并插入到事件隊(duì)列中;步驟4:按照離散事件驅(qū)動(dòng)機(jī)制的調(diào)度過程分析應(yīng)用異常,呼叫執(zhí)行事件模塊向事件隊(duì)列中插入呼叫執(zhí)行事件(恢復(fù)一臺(tái)相同虛擬機(jī));步驟5:調(diào)度層將呼叫執(zhí)行事件發(fā)送給虛擬機(jī)管理模塊;步驟6:虛擬機(jī)管理模塊根據(jù)接收到的應(yīng)用執(zhí)行事件對(duì)虛擬機(jī)進(jìn)行相關(guān)操作,并把執(zhí)行結(jié)果發(fā)送到共享數(shù)據(jù)庫中。因此,本發(fā)明具有如下優(yōu)點(diǎn):通過本系統(tǒng)的高可用性設(shè)計(jì),當(dāng)Genesys呼叫軟件出現(xiàn)故障時(shí),本系統(tǒng)能夠及時(shí)、主動(dòng)的監(jiān)測到服務(wù)故障并對(duì)故障進(jìn)行處理,從而減少系統(tǒng)的故障恢復(fù)時(shí)間和用戶等待時(shí)間,提高系統(tǒng)的穩(wěn)定性、可用性和故障恢復(fù)能力,改善用戶滿意度。附圖說明圖1本發(fā)明的系統(tǒng)框架圖。圖2本發(fā)明的HA層結(jié)構(gòu)圖。圖3本發(fā)明的快速備份恢復(fù)策略流程圖。具體實(shí)施方式下面通過實(shí)施例,并結(jié)合附圖,對(duì)本發(fā)明的技術(shù)方案作進(jìn)一步具體的說明。實(shí)施例:1、本發(fā)明主要包括:事件隊(duì)列層:本發(fā)明以事件的形式表示呼叫系統(tǒng)中的任何行為,因而系統(tǒng)中存在各種不同類型的事件,為了對(duì)這些事件進(jìn)行統(tǒng)一的管理和存儲(chǔ)而設(shè)置了事件隊(duì)列。事件驅(qū)動(dòng)機(jī)制主要分為三個(gè)步驟:首先是將事件放入全局的事件隊(duì)列中,然后按時(shí)間順序從事件隊(duì)列中取出事件,再通過事件指定的處理對(duì)象處理事件,在處理過程中可能會(huì)往事件隊(duì)列中加入新的事件。調(diào)度層:調(diào)度層是整個(gè)系統(tǒng)的核心,呼叫系統(tǒng)中任何行為都是以事件的形式表示的,系統(tǒng)中存在一個(gè)全局事件隊(duì)列,用于保存系統(tǒng)中的所有事件。調(diào)度層主要負(fù)責(zé)對(duì)全局事件隊(duì)列進(jìn)行操作,該層能夠保證事件有條不紊地被執(zhí)行。系統(tǒng)中的事件主要分為三種:呼叫感知事件、呼叫策略事件、呼叫執(zhí)行事件。邏輯層:邏輯層是整個(gè)系統(tǒng)的決策者,由其來決定從事件隊(duì)列中取出的事件的處理和運(yùn)行流程。邏輯層在處理事件時(shí)調(diào)用該事件對(duì)應(yīng)的執(zhí)行單元,按照一定的流程以確保系統(tǒng)的正常運(yùn)行。功能層:功能層是整個(gè)系統(tǒng)的底層,根據(jù)邏輯層的處理單元制定相應(yīng)的執(zhí)行單元,在物理機(jī)、虛擬機(jī)、Genesys呼叫系統(tǒng)三個(gè)層次進(jìn)行相應(yīng)處理并與虛擬機(jī)管理平臺(tái)進(jìn)行交互,以提供對(duì)上述幾層的支持。該層按功能可以分為三個(gè)層次:呼叫感知功能、呼叫策略功能、呼叫執(zhí)行功能。2、邏輯層和功能層包括呼叫感知事件模塊、呼叫策略事件模塊和呼叫執(zhí)行事件模塊;系統(tǒng)根據(jù)呼叫感知事件模塊感知到的結(jié)果生成呼叫感知事件,呼叫策略事件模塊針對(duì)呼叫感知事件制定應(yīng)對(duì)策略,生成呼叫策略事件,之后根據(jù)恢復(fù)策略由呼叫執(zhí)行事件生成呼叫執(zhí)行事件,交互虛擬機(jī)管理平臺(tái)對(duì)虛擬機(jī)操作。2.1、呼叫感知事件模塊包括一個(gè)感知處理單元和感知執(zhí)行單元,所述感知處理單元設(shè)置在邏輯層,感知執(zhí)行單元設(shè)置在功能層;所述呼叫策略事件模塊包括一個(gè)策略處理單元和策略執(zhí)行單元,所述策略處理單元設(shè)置在邏輯層,策略執(zhí)行單元設(shè)置在功能層;所述呼叫執(zhí)行事件模塊包括一個(gè)執(zhí)行事件處理單元和一個(gè)執(zhí)行事件執(zhí)行單元,所述執(zhí)行事件處理單元設(shè)置在邏輯層,執(zhí)行事件執(zhí)行單元設(shè)置在功能層。2.11、呼叫感知事件模塊呼叫感知事件模塊通過輪詢感知和無代理主動(dòng)監(jiān)控兩種方式從物理機(jī)、虛擬機(jī)和Genesys呼叫系統(tǒng)三個(gè)層次分析整個(gè)系統(tǒng)的運(yùn)行情況,當(dāng)調(diào)度層從事件隊(duì)列中取出某一呼叫感知事件后,針對(duì)該事件通過查詢共享數(shù)據(jù)庫獲得事件的相關(guān)參數(shù)信息進(jìn)行相應(yīng)處理。2.12、呼叫策略事件模塊該模塊根據(jù)呼叫感知事件模塊的結(jié)果進(jìn)行相應(yīng)處理,若感知的結(jié)果是正常的,系統(tǒng)不會(huì)進(jìn)一步處理;若感知結(jié)果異常,系統(tǒng)查詢共享數(shù)據(jù)庫,根據(jù)異常結(jié)果制定相應(yīng)的呼叫執(zhí)行事件(用于恢復(fù)異常),發(fā)送給呼叫執(zhí)行事件模塊。2.13、呼叫執(zhí)行事件模塊呼叫執(zhí)行模塊根據(jù)接收到的呼叫策略事件生成呼叫執(zhí)行事件,調(diào)用虛擬機(jī)管理平臺(tái)接口完成高可用動(dòng)作。3.事件隊(duì)列中的事件類型3.1、呼叫感知事件呼叫感知事件中所包含的事件對(duì)應(yīng)系統(tǒng)中的感知?jiǎng)幼鳎艚懈兄K根據(jù)異常信息產(chǎn)生不同的呼叫感知事件,呼叫感知事件包括如下內(nèi)容:?可感知的虛擬機(jī)事件a)MsgServer(GenesysMessageServer)、SIPServer(GenesysSIPServer)、SCS(GenesysSolutionControlServer)、URS(GenesysUniversalRoutingServer)等服務(wù)因故停止;b)SIPServer、StatServerReporting(GenesysStateServer)、StatServerRouting(GenesysStatServer)、LogDBServer/ETL_DB(GenesysDBServer)等服務(wù)長時(shí)間處于掛起狀態(tài);c)SIPServer、T-Server服務(wù)的鏈接數(shù)過大;d)Flexlm(FLEXlmLicenseManager)軟件使用權(quán)過期;e)呼叫關(guān)聯(lián)數(shù)據(jù)、路由分配(到坐席的分配)發(fā)生問題;f)報(bào)表數(shù)據(jù)無法寫入DataMartDBServer報(bào)表數(shù)據(jù)庫;g)ConfigurationServer無法連接數(shù)據(jù)庫。?感知虛擬機(jī)硬盤事件?感知虛擬機(jī)網(wǎng)絡(luò)事件?感知主機(jī)事件?感知主機(jī)剩余內(nèi)存事件?感知進(jìn)程事件?確認(rèn)進(jìn)程感知事件3.2、呼叫策略事件呼叫策略事件中所包含的事件對(duì)應(yīng)系統(tǒng)中的高可用性策略制定動(dòng)作,包括檢查虛擬機(jī)事件、檢查虛擬機(jī)硬盤事件、檢查虛擬機(jī)網(wǎng)絡(luò)事件、檢查主機(jī)事件、檢查主機(jī)剩余內(nèi)存事件、檢查進(jìn)程事件等。3.3、呼叫執(zhí)行事件呼叫執(zhí)行事件中所包含的事件對(duì)應(yīng)系統(tǒng)中的高可用性策略執(zhí)行動(dòng)作,包括實(shí)例操作事件、鏡像操作事件、模板操作事件、卷操作事件等。呼叫事件與其執(zhí)行者的對(duì)應(yīng)關(guān)系如下:事件handlerfunctionGenesys服務(wù)狀態(tài)感知事件呼叫感知事件模塊獲取當(dāng)前Genesys服務(wù)的狀態(tài)信息,并構(gòu)造相應(yīng)的呼叫停止/掛起策略事件SIPServer、T-Server服務(wù)的鏈接數(shù)感知事件呼叫感知事件模塊獲取當(dāng)前Genesys服務(wù)連接數(shù)目,并構(gòu)造相應(yīng)的SIPServer、T-Server服務(wù)的鏈接數(shù)過大策略事件Flexlm使用權(quán)感知事件呼叫感知事件模塊獲取Flexlm軟件使用權(quán),并構(gòu)造Flexlm(FLEXlmLicenseManager)軟件使用權(quán)過期策略事件呼叫數(shù)據(jù)、路由分配感知事件呼叫感知事件模塊獲取Genesys服務(wù)呼叫數(shù)據(jù)、路由分配信息,構(gòu)造呼叫關(guān)聯(lián)數(shù)據(jù)、路由分配(到坐席的分配)策略事件Server端連接/寫入數(shù)據(jù)庫感知事件呼叫感知事件模塊獲取Server連接/寫入狀態(tài)信息,并構(gòu)造Server端無法連接或?qū)懭霐?shù)據(jù)庫策略事件Genesys服務(wù)因故停止/掛起狀態(tài)策略事件呼叫策略事件模塊查詢共享數(shù)據(jù)庫獲取需要的信息,檢查并確認(rèn)Genesys系統(tǒng)狀態(tài),構(gòu)造啟動(dòng)備份虛擬機(jī)事件SIPServer、T-Server服務(wù)的鏈接數(shù)過大策略事件呼叫策略事件模塊查詢共享數(shù)據(jù)庫獲取需要的信息,檢查并確認(rèn)Genesys系統(tǒng)狀態(tài),構(gòu)造創(chuàng)建多臺(tái)虛擬機(jī)及啟動(dòng)這些已創(chuàng)建虛擬機(jī)事件Flexlm(FLEXlmLicenseManager)軟件使用權(quán)過期策略事件呼叫策略事件模塊查詢共享數(shù)據(jù)庫獲取需要的信息,檢查并確認(rèn)Genesys系統(tǒng)狀態(tài),構(gòu)建啟動(dòng)備份虛擬機(jī)事件呼叫關(guān)聯(lián)數(shù)據(jù)、路由分配(到坐席的分配)策略事件呼叫策略事件模塊查詢共享數(shù)據(jù)庫獲取需要的信息,檢查并確認(rèn)URS服務(wù)故障,構(gòu)造啟動(dòng)備份虛擬機(jī)事件Server端無法連接或?qū)懭霐?shù)據(jù)庫策略事件呼叫策略事件模塊查詢共享數(shù)據(jù)庫獲取需要的信息,檢查并確認(rèn)數(shù)據(jù)庫故障,構(gòu)造啟動(dòng)備份虛擬機(jī)事件4、下面介紹應(yīng)用上面的硬件進(jìn)行提高Genesys呼叫系統(tǒng)可用性的云計(jì)算監(jiān)控方法,包括以下步驟:4.1、事件驅(qū)動(dòng)步驟:調(diào)度層根據(jù)事件的優(yōu)先級(jí)及時(shí)間戳實(shí)現(xiàn)事件調(diào)度過程,邏輯層的處理單元完成對(duì)事件的分析,并調(diào)用功能層的執(zhí)行單元進(jìn)行處理,最后由邏輯層向事件隊(duì)列插入下一步要發(fā)生的事件。基于上述事件驅(qū)動(dòng)步驟,輪詢感知步驟和主動(dòng)監(jiān)控步驟如下所示:輪詢感知步驟:采用輪詢方式監(jiān)測呼叫系統(tǒng)各個(gè)服務(wù)的運(yùn)行狀況,根據(jù)監(jiān)測結(jié)果由呼叫感知事件模塊生成呼叫感知事件,然后按照事件驅(qū)動(dòng)步驟依次由呼叫策略事件模塊和呼叫執(zhí)行事件模塊生成呼叫感知事件和呼叫執(zhí)行事件。無代理主動(dòng)監(jiān)控步驟:該步驟與輪詢感知步驟的不同之處是當(dāng)呼叫服務(wù)出現(xiàn)故障時(shí),系統(tǒng)能夠主動(dòng)感知到服務(wù)異常并將呼叫策略事件插入到事件隊(duì)列中,其后續(xù)步驟與輪詢感知步驟流程類似。4.2、事件驅(qū)動(dòng)步驟,包括以下子步驟:步驟1:將呼叫系統(tǒng)中的事件放入全局的事件隊(duì)列中;步驟2:根據(jù)事件的優(yōu)先級(jí)和時(shí)間戳,調(diào)度層從事件隊(duì)列中取出相應(yīng)事件;步驟3:邏輯層處理單元根據(jù)事件的參數(shù)信息確定事件的類型并調(diào)用執(zhí)行單元進(jìn)行相應(yīng)處理,在處理完成后向事件隊(duì)列中插入下一步要發(fā)生的事件。步驟4:重復(fù)步驟1至步驟3,使不斷向事件隊(duì)列中放入、取出事件并處理,整個(gè)事件機(jī)制保持不間斷運(yùn)行。4.3、輪詢感知步驟,包括以下子步驟:步驟1:調(diào)度層從事件隊(duì)列中取出時(shí)間戳最小的呼叫感知事件,并將其發(fā)送給呼叫感知事件模塊;步驟2:呼叫感知事件模塊的感知處理單元通過共享數(shù)據(jù)庫獲得相關(guān)信息,并使用虛擬機(jī)內(nèi)部進(jìn)程信息獲取方法獲取虛擬機(jī)內(nèi)相關(guān)進(jìn)程的信息。如果感知到呼叫應(yīng)用異常,則構(gòu)造相應(yīng)的事件并插入到事件隊(duì)列中;步驟3:調(diào)度層從事件隊(duì)列中獲取到步驟2中生成的事件后,發(fā)送給呼叫策略事件模塊;步驟4:呼叫策略事件模塊的策略處理單元查詢數(shù)據(jù)庫后獲取需要的信息,并構(gòu)造相應(yīng)的呼叫策略事件。最后構(gòu)造一個(gè)呼叫感知事件,將其插入到事件隊(duì)列中;步驟5:調(diào)度層將呼叫策略事件發(fā)送到呼叫執(zhí)行事件模塊;步驟6:呼叫執(zhí)行事件模塊的執(zhí)行事件處理單元根據(jù)收到的呼叫策略事件,構(gòu)造相應(yīng)的呼叫執(zhí)行事件,并把該事件插入消息隊(duì)列中;步驟7:調(diào)度層將呼叫執(zhí)行事件發(fā)送給虛擬機(jī)管理模塊;步驟8:虛擬機(jī)管理模塊根據(jù)接收到的呼叫執(zhí)行事件對(duì)虛擬機(jī)進(jìn)行相關(guān)操作,并把執(zhí)行結(jié)果發(fā)送到共享數(shù)據(jù)庫中。本系統(tǒng)中的呼叫感知事件是由呼叫感知模塊根據(jù)相關(guān)進(jìn)程標(biāo)志位構(gòu)造的,對(duì)應(yīng)關(guān)系如下所示:應(yīng)用感知事件進(jìn)程標(biāo)志位呼叫服務(wù)因故停止ImageFileName呼叫服務(wù)長時(shí)間處于掛起狀態(tài)StateSIPServer、T-Server服務(wù)的鏈接數(shù)過大ActiveThreadsFlexlm(FLEXlmLicenseManager)軟件使用權(quán)過期ImageFileName呼叫關(guān)聯(lián)數(shù)據(jù)、路由分配(到坐席的分配)發(fā)生問題ImageFileName報(bào)表數(shù)據(jù)無法寫入DataMartDBServer報(bào)表數(shù)據(jù)庫ImageFileNameConfigurationServer無法連接數(shù)據(jù)庫ImageFileName虛擬機(jī)內(nèi)存使用量超過閾值VirtualSize物理機(jī)內(nèi)存使用量超過閾值VirtualSize虛擬機(jī)CPU使用率超過閾值KernelTime,UserTime4.4、無代理主動(dòng)監(jiān)控事件步驟,包括以下子步驟:步驟1:當(dāng)Genesys呼叫系統(tǒng)出現(xiàn)異常時(shí),會(huì)產(chǎn)生相應(yīng)的系統(tǒng)調(diào)用(例如服務(wù)異常中斷系統(tǒng)刪除后綴為.snapshot快照日志文件),通過監(jiān)控系統(tǒng)API調(diào)用情況判斷呼叫系統(tǒng)狀態(tài);步驟2:如果檢測到虛擬機(jī)內(nèi)Genesys應(yīng)用異常,則采用KVM虛擬機(jī)陷入機(jī)制使虛擬機(jī)管理器報(bào)告虛擬機(jī)的異常信息;步驟3:若事件隊(duì)列與Genesys應(yīng)用在同一臺(tái)物理機(jī)上,則直接把恢復(fù)虛擬機(jī)的呼叫策略事件插入到事件隊(duì)列中;若兩者不在同一臺(tái)物理機(jī)上,則Genesys應(yīng)用(TCP客戶端)與事件隊(duì)列(TCP服務(wù)器端)建立網(wǎng)絡(luò)連接,將異常信息傳送到服務(wù)器端,并插入到事件隊(duì)列中;步驟4:按照離散事件驅(qū)動(dòng)機(jī)制的調(diào)度過程分析應(yīng)用異常,呼叫執(zhí)行事件模塊向事件隊(duì)列中插入呼叫執(zhí)行事件(恢復(fù)一臺(tái)相同虛擬機(jī));步驟5:調(diào)度層將呼叫執(zhí)行事件發(fā)送給虛擬機(jī)管理模塊;步驟6:虛擬機(jī)管理模塊根據(jù)接收到的應(yīng)用執(zhí)行事件對(duì)虛擬機(jī)進(jìn)行相關(guān)操作,并把執(zhí)行結(jié)果發(fā)送到共享數(shù)據(jù)庫中。8.本系統(tǒng)中服務(wù)感知模塊中要獲取的進(jìn)程信息包括,如圖2所示:KernelTime//在內(nèi)核模式運(yùn)行的時(shí)間和UserTime//在用戶態(tài)運(yùn)行的時(shí)間和State//進(jìn)程所處的狀態(tài)VirtualSize//進(jìn)程的內(nèi)存使用量ImageFileName//進(jìn)程名ActiveThreads//活躍線程數(shù)本文中所描述的具體實(shí)施例僅僅是對(duì)本發(fā)明精神作舉例說明。本發(fā)明所屬技術(shù)領(lǐng)域的技術(shù)人員可以對(duì)所描述的具體實(shí)施例做各種各樣的修改或補(bǔ)充或采用類似的方式替代,但并不會(huì)偏離本發(fā)明的精神或者超越所附權(quán)利要求書所定義的范圍。