本發(fā)明涉及通信
技術(shù)領(lǐng)域:
,尤其涉及一種基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)方法及系統(tǒng)。
背景技術(shù):
:現(xiàn)在,隨著通信技術(shù)的發(fā)展,在云端部署ac(accesscontroller,接入控制器),簡(jiǎn)稱云ac,是一種越來(lái)越普遍的通信方式,ap設(shè)備(accesspointer,接入節(jié)點(diǎn))跨越internet與云ac相連,從而實(shí)現(xiàn)云ac對(duì)各ap設(shè)備的管理和控制。云ac在運(yùn)行時(shí),一些關(guān)鍵業(yè)務(wù)模塊需要與多個(gè)外圍接口進(jìn)行信息交互,保證各ap設(shè)備的正常運(yùn)行,因此,這些關(guān)鍵業(yè)務(wù)模塊的執(zhí)行結(jié)果又跟用戶的使用體驗(yàn)直接相關(guān),對(duì)這些關(guān)鍵業(yè)務(wù)模塊的運(yùn)行狀態(tài)進(jìn)行監(jiān)控就顯得非常的必要。在現(xiàn)有技術(shù)中,大量ap設(shè)備連接云ac的情況下,如果云ac對(duì)關(guān)鍵業(yè)務(wù)模塊的所有具體執(zhí)行細(xì)節(jié)進(jìn)行細(xì)粒度日志監(jiān)聽(tīng),由于這些細(xì)粒度日志信息非常巨大且需要寫到存儲(chǔ)設(shè)備上,會(huì)對(duì)云ac的性能造成很大的壓力,降低云ac的處理能力,在生產(chǎn)環(huán)境下無(wú)法對(duì)所有的關(guān)鍵業(yè)務(wù)模塊進(jìn)行細(xì)粒度日志監(jiān)聽(tīng),導(dǎo)致云ac的處理能力無(wú)法滿足實(shí)際需求時(shí),運(yùn)營(yíng)維護(hù)人員無(wú)法及時(shí)得到通知,不利于運(yùn)營(yíng)維護(hù)人員及時(shí)采取相應(yīng)的措施排除問(wèn)題。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的是提供一種基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)方法及系統(tǒng),在不對(duì)云ac的性能造成很大壓力的情況下,當(dāng)云ac的處理能力出現(xiàn)問(wèn)題時(shí),可以及時(shí)通知運(yùn)營(yíng)維護(hù)人員采取相應(yīng)的措施排除問(wèn)題。本發(fā)明提供的技術(shù)方案如下:一種基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)方法,包括:步驟s100實(shí)時(shí)監(jiān)聽(tīng)并統(tǒng)計(jì)云ac中關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間;步驟s200根據(jù)統(tǒng)計(jì)的所述業(yè)務(wù)執(zhí)行時(shí)間,判斷所述關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常;步驟s300當(dāng)所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),發(fā)送異常提示信息。在上述技術(shù)方案中,根據(jù)關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間,來(lái)判斷關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常,若發(fā)生異常,就立即發(fā)送異常提示信息給運(yùn)營(yíng)維護(hù)人員,以便他們及時(shí)采取相應(yīng)的措施來(lái)排除問(wèn)題,使云ac恢復(fù)正常的工作性能。這種監(jiān)聽(tīng)方式并不會(huì)對(duì)云ac的性能造成很大的影響,提高了用戶的使用體驗(yàn)。進(jìn)一步,所述步驟s200包括:步驟s210判斷所述業(yè)務(wù)執(zhí)行時(shí)間是否出現(xiàn)異常;步驟s220當(dāng)所述業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),獲取所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù);步驟s230根據(jù)預(yù)設(shè)規(guī)則,將獲取的出現(xiàn)異常的所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)更新;步驟s240根據(jù)所述關(guān)鍵業(yè)務(wù)模塊的所述出錯(cuò)次數(shù),判斷所述關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常。在上述技術(shù)方案中,通過(guò)業(yè)務(wù)執(zhí)行時(shí)間來(lái)更新出錯(cuò)次數(shù),再根據(jù)出錯(cuò)次數(shù)來(lái)判斷關(guān)鍵業(yè)務(wù)模塊是否出現(xiàn)異常,判斷的過(guò)程更直觀、簡(jiǎn)便。進(jìn)一步,所述步驟210具體包括:步驟211判斷所述業(yè)務(wù)執(zhí)行時(shí)間是否超過(guò)所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間;所述步驟s220具體包括:步驟s221當(dāng)所述業(yè)務(wù)執(zhí)行時(shí)間超過(guò)所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間時(shí),判斷所述關(guān)鍵業(yè)務(wù)模塊是否在異常數(shù)據(jù)庫(kù)中;步驟s222當(dāng)所述關(guān)鍵業(yè)務(wù)模塊在所述異常數(shù)據(jù)庫(kù)時(shí),獲取所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù);步驟s223當(dāng)所述關(guān)鍵業(yè)務(wù)模塊未在所述異常數(shù)據(jù)庫(kù)時(shí),將所述關(guān)鍵業(yè)務(wù)模塊添加入所述異常數(shù)據(jù)庫(kù),將所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)設(shè)置為初始值,并獲取所述出錯(cuò)次數(shù)。在上述技術(shù)方案中,專門開(kāi)辟一個(gè)異常數(shù)據(jù)庫(kù),用來(lái)存儲(chǔ)關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù),使監(jiān)聽(tīng)的過(guò)程不會(huì)影響到云ac的正常運(yùn)行,既保證了云ac的正常工作,又能對(duì)云ac的關(guān)鍵業(yè)務(wù)模塊進(jìn)行監(jiān)聽(tīng)。進(jìn)一步,所述步驟s240包括:步驟s241當(dāng)所述出錯(cuò)次數(shù)不為初始值的持續(xù)時(shí)間達(dá)到預(yù)設(shè)時(shí)間時(shí),判斷在所述異常數(shù)據(jù)庫(kù)中的所述關(guān)鍵業(yè)務(wù)模塊的所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)是否大于預(yù)設(shè)警戒值;步驟s242當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)大于所述預(yù)設(shè)警戒值時(shí),則認(rèn)為所述出錯(cuò)次數(shù)對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常,執(zhí)行步驟s300。在上述技術(shù)方案中,當(dāng)關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)少量次數(shù)的異常時(shí),這種情況是可以忽略的,只有在預(yù)設(shè)時(shí)間內(nèi)出錯(cuò)次數(shù)大于預(yù)設(shè)警戒值時(shí),才認(rèn)為其發(fā)生異常,需要發(fā)送異常提示信息,多種情況的考慮優(yōu)化了云ac的監(jiān)聽(tīng)過(guò)程,提高了其工作效率。進(jìn)一步,所述步驟s240還包括:步驟s243當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)不大于所述預(yù)設(shè)警戒值時(shí),則將所述出錯(cuò)次數(shù)更新為初始值;或,步驟s244當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)不大于所述預(yù)設(shè)警戒值時(shí),則將所述出錯(cuò)次數(shù)和/或所述出錯(cuò)次數(shù)對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊從所述異常數(shù)據(jù)庫(kù)中刪除。在上述技術(shù)方案中,在預(yù)設(shè)時(shí)間內(nèi)若出錯(cuò)次數(shù)沒(méi)有達(dá)到預(yù)設(shè)警戒值,則會(huì)自動(dòng)將其更新為初始值,為下次出現(xiàn)異常作準(zhǔn)備。也可以將出錯(cuò)次數(shù)和/或關(guān)鍵業(yè)務(wù)模塊刪除,一來(lái)為異常數(shù)據(jù)庫(kù)釋放存儲(chǔ)空間,二來(lái)也為下次出現(xiàn)異常作準(zhǔn)備。進(jìn)一步,所述步驟s200之后還包括:步驟s400當(dāng)所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),打開(kāi)發(fā)生異常的所述關(guān)鍵業(yè)務(wù)模塊的細(xì)粒度日志。在上述技術(shù)方案中,當(dāng)關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),可以將此發(fā)生異常的關(guān)鍵業(yè)務(wù)模塊的細(xì)粒度日志打開(kāi),方便后續(xù)運(yùn)營(yíng)維護(hù)人員查看,及時(shí)了解采取哪種措施排除問(wèn)題。本發(fā)明還提供一種基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)系統(tǒng),包括:關(guān)鍵業(yè)務(wù)模塊;監(jiān)聽(tīng)統(tǒng)計(jì)模塊,與所述關(guān)鍵業(yè)務(wù)模塊電連接,用于實(shí)時(shí)監(jiān)聽(tīng)并統(tǒng)計(jì)云ac中所述關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間;異常判斷模塊,與所述監(jiān)聽(tīng)統(tǒng)計(jì)模塊電連接,所述異常判斷模塊根據(jù)所述監(jiān)聽(tīng)統(tǒng)計(jì)模塊統(tǒng)計(jì)的所述業(yè)務(wù)執(zhí)行時(shí)間,判斷所述關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常;異常提示模塊,與所述異常判斷模塊電連接,當(dāng)所述異常判斷模塊判斷所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),所述異常提示模塊發(fā)送異常提示信息。在上述技術(shù)方案中,本發(fā)明在不影響云ac整體性能的情況下,可以對(duì)云ac的關(guān)鍵業(yè)務(wù)模塊進(jìn)行監(jiān)聽(tīng),當(dāng)出現(xiàn)異常時(shí),及時(shí)通知運(yùn)營(yíng)維護(hù)人員,大大提高了用戶的使用體驗(yàn)。進(jìn)一步,所述異常判斷模塊包括:時(shí)間判斷子模塊,用于判斷所述業(yè)務(wù)執(zhí)行時(shí)間是否出現(xiàn)異常;次數(shù)判斷子模塊,當(dāng)異常數(shù)據(jù)庫(kù)將所述出錯(cuò)次數(shù)更新后,所述次數(shù)判斷子模塊根據(jù)所述關(guān)鍵業(yè)務(wù)模塊的所述出錯(cuò)次數(shù),判斷所述關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常;所述基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)系統(tǒng)還包括:次數(shù)獲取模塊,與所述異常判斷模塊電連接,當(dāng)所述異常判斷模塊判斷所述業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),所述次數(shù)獲取模塊獲取所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù);所述異常數(shù)據(jù)庫(kù),與所述次數(shù)獲取模塊、所述異常判斷模塊電連接,當(dāng)所述次數(shù)獲取模塊獲取了所述出錯(cuò)次數(shù)時(shí),所述異常數(shù)據(jù)庫(kù)根據(jù)預(yù)設(shè)規(guī)則,將獲取的出現(xiàn)異常的所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)更新。進(jìn)一步,所述時(shí)間判斷子模塊,進(jìn)一步用于判斷所述業(yè)務(wù)執(zhí)行時(shí)間是否超過(guò)所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間;所述異常判斷模塊還包括:模塊判斷子模塊,當(dāng)所述時(shí)間判斷子模塊判斷所述業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),所述模塊判斷子模塊判斷所述關(guān)鍵業(yè)務(wù)模塊是否在所述異常數(shù)據(jù)庫(kù)中;所述異常數(shù)據(jù)庫(kù),當(dāng)所述異常判斷模塊判斷所述關(guān)鍵業(yè)務(wù)模塊未在所述異常數(shù)據(jù)庫(kù)時(shí),所述異常數(shù)據(jù)庫(kù)進(jìn)一步用于將所述關(guān)鍵業(yè)務(wù)模塊添加入所述異常數(shù)據(jù)庫(kù),將所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)設(shè)置為初始值;所述次數(shù)獲取模塊,進(jìn)一步用于獲取所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)。進(jìn)一步,還包括:日志管理模塊,與所述異常判斷模塊電連接,當(dāng)所述異常判斷模塊判斷所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),所述日志管理模塊打開(kāi)發(fā)生異常的所述關(guān)鍵業(yè)務(wù)模塊的細(xì)粒度日志。與現(xiàn)有技術(shù)相比,本發(fā)明的基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)方法及系統(tǒng)有益效果在于:本發(fā)明只需要通過(guò)監(jiān)聽(tīng)其業(yè)務(wù)執(zhí)行時(shí)間以及相應(yīng)的出錯(cuò)次數(shù),就可以達(dá)到監(jiān)聽(tīng)關(guān)鍵業(yè)務(wù)模塊是否出現(xiàn)異常的目的,不需要一直監(jiān)聽(tīng)各關(guān)鍵業(yè)務(wù)模塊的細(xì)粒度日志,大大降低了云ac的性能占用率,在保證云ac得到監(jiān)聽(tīng)的情況下,大大改善了用戶的使用體驗(yàn)。附圖說(shuō)明下面將以明確易懂的方式,結(jié)合附圖說(shuō)明優(yōu)選實(shí)施方式,對(duì)一種基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)方法及系統(tǒng)的上述特性、技術(shù)特征、優(yōu)點(diǎn)及其實(shí)現(xiàn)方式予以進(jìn)一步說(shuō)明。圖1是本發(fā)明基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)方法一個(gè)實(shí)施例的流程圖;圖2是本發(fā)明基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)方法另一個(gè)實(shí)施例的流程圖;圖3是本發(fā)明基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)系統(tǒng)一個(gè)實(shí)施例的結(jié)構(gòu)示意圖;圖4是本發(fā)明基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)系統(tǒng)另一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。附圖標(biāo)號(hào)說(shuō)明:10.關(guān)鍵業(yè)務(wù)模塊,20.監(jiān)聽(tīng)統(tǒng)計(jì)模塊,30.異常判斷模塊,31.時(shí)間判斷子模塊,32.次數(shù)判斷子模塊,33.模塊判斷子模塊,40.異常提示模塊,50.次數(shù)獲取模塊,60.異常數(shù)據(jù)庫(kù),70.日志管理模塊。具體實(shí)施方式為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)照附圖說(shuō)明本發(fā)明的具體實(shí)施方式。顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖,并獲得其他的實(shí)施方式。為使圖面簡(jiǎn)潔,各圖中只示意性地表示出了與本發(fā)明相關(guān)的部分,它們并不代表其作為產(chǎn)品的實(shí)際結(jié)構(gòu)。另外,以使圖面簡(jiǎn)潔便于理解,在有些圖中具有相同結(jié)構(gòu)或功能的部件,僅示意性地繪示了其中的一個(gè),或僅標(biāo)出了其中的一個(gè)。在本文中,“一個(gè)”不僅表示“僅此一個(gè)”,也可以表示“多于一個(gè)”的情形。在本發(fā)明的一個(gè)實(shí)施例中,如圖1所示,一種基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)方法,包括:步驟s100實(shí)時(shí)監(jiān)聽(tīng)并統(tǒng)計(jì)云ac中關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間;步驟s200根據(jù)統(tǒng)計(jì)的所述業(yè)務(wù)執(zhí)行時(shí)間,判斷所述關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常;步驟s300當(dāng)所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),發(fā)送異常提示信息。具體的,關(guān)鍵業(yè)務(wù)模塊在云ac中起著極為重要的作用,是考量云ac的業(yè)務(wù)性能能不能滿足使用性能指標(biāo)的關(guān)鍵因素。關(guān)鍵業(yè)務(wù)模塊主要有:認(rèn)證模塊,此模塊需要與ap設(shè)備、第三方認(rèn)證、云ac數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)交換與處理;報(bào)文處理模塊,接收并處理云ac和ap設(shè)備之間交互的報(bào)文等;報(bào)警信息處理模塊,用于處理各接口的報(bào)警信息;外部接口模塊,用于讓云ac和ap設(shè)備之間實(shí)現(xiàn)通訊等其它關(guān)鍵業(yè)務(wù)模塊。通過(guò)監(jiān)聽(tīng)并統(tǒng)計(jì)某些/個(gè)關(guān)鍵業(yè)務(wù)模塊吞吐量(或報(bào)文處理等)的業(yè)務(wù)執(zhí)行時(shí)間,來(lái)確認(rèn)關(guān)鍵業(yè)務(wù)模塊是否出現(xiàn)異常。報(bào)文處理模塊對(duì)上報(bào)的報(bào)文進(jìn)行處理后,把跟用戶認(rèn)證相關(guān)的報(bào)文信息發(fā)到認(rèn)證模塊,認(rèn)證模塊收到消息后開(kāi)始處理用戶認(rèn)證。例如:假設(shè)關(guān)鍵業(yè)務(wù)模塊為云ac數(shù)據(jù)庫(kù),使用云ac數(shù)據(jù)庫(kù)認(rèn)證,最消耗時(shí)間的功能是在云ac數(shù)據(jù)庫(kù)中根據(jù)用戶名和密碼查找用戶信息并進(jìn)行判斷,在正常情況下,在云ac數(shù)據(jù)庫(kù)中查詢一條用戶記錄并返回結(jié)果的時(shí)間不超過(guò)100ms(可以設(shè)置此100ms為云ac數(shù)據(jù)庫(kù)的預(yù)設(shè)執(zhí)行時(shí)間),如果實(shí)際的業(yè)務(wù)執(zhí)行時(shí)間超過(guò)100ms,就可以認(rèn)為云ac數(shù)據(jù)庫(kù)處理性能有問(wèn)題,需要進(jìn)行處理。如果使用第三方認(rèn)證,例如:微信認(rèn)證,假設(shè)關(guān)鍵業(yè)務(wù)模塊為微信接口模塊,最消耗時(shí)間的功能是等候微信的認(rèn)證返回信息,可以指定時(shí)間為50ms(即預(yù)設(shè)執(zhí)行時(shí)間),如果超過(guò)這個(gè)時(shí)間微信接口沒(méi)有返回結(jié)果,可以認(rèn)為與微信的接口不穩(wěn)定,即微信接口模塊出現(xiàn)異常,需要進(jìn)行處理(例如:發(fā)出異常提示信息等)。關(guān)鍵業(yè)務(wù)模塊可以由運(yùn)營(yíng)維護(hù)人員自己進(jìn)行設(shè)置,在云ac中通過(guò)aop(aspectorientedprogramming,面向切面編程)編程方式,記錄(這些)關(guān)鍵業(yè)務(wù)功能的執(zhí)行時(shí)間。aop可以通過(guò)預(yù)編譯方式和運(yùn)行期動(dòng)態(tài)代理實(shí)現(xiàn)在不修改源代碼的情況下給程序動(dòng)態(tài)統(tǒng)一添加功能的一種技術(shù),它將日志記錄,性能統(tǒng)計(jì),安全控制,事務(wù)處理,異常處理等代碼從業(yè)務(wù)邏輯代碼中劃分出來(lái),通過(guò)對(duì)這些行為的分離,改變這些行為的時(shí)候不影響業(yè)務(wù)邏輯的代碼。使用aop方式對(duì)關(guān)鍵業(yè)務(wù)模塊進(jìn)行性能的監(jiān)聽(tīng),與關(guān)鍵業(yè)務(wù)模塊的實(shí)際處理代碼相互隔離,不會(huì)影響云ac本身的正常運(yùn)行。根據(jù)關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間,來(lái)判斷關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常,若發(fā)生異常,就立即發(fā)送異常提示信息給運(yùn)營(yíng)維護(hù)人員,以便他們及時(shí)采取相應(yīng)的措施來(lái)排除問(wèn)題,使云ac恢復(fù)正常的工作性能。云ac可以通過(guò)郵件通道將異常信息發(fā)送給運(yùn)營(yíng)維護(hù)人員,也可以以報(bào)警聲音作為異常提示信息發(fā)出。在本發(fā)明的另一個(gè)實(shí)施例中,除與上述相同的之外,監(jiān)聽(tīng)并統(tǒng)計(jì)云ac的關(guān)鍵業(yè)務(wù)模塊的數(shù)量可以為多個(gè),即監(jiān)聽(tīng)并統(tǒng)計(jì)多個(gè)關(guān)鍵業(yè)務(wù)模塊各自的業(yè)務(wù)執(zhí)行時(shí)間,分別對(duì)各關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間進(jìn)行判斷,當(dāng)有某一個(gè)或一些關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),就發(fā)送異常提示信息。優(yōu)選地,在發(fā)送異常提示信息時(shí),把發(fā)生異常的關(guān)鍵業(yè)務(wù)模塊的名稱一起發(fā)送,便于讓運(yùn)營(yíng)維護(hù)人員了解具體哪個(gè)或哪些關(guān)鍵業(yè)務(wù)模塊出問(wèn)題。在本發(fā)明的另一個(gè)實(shí)施例中,除與上述相同的之外,所述步驟s200包括:步驟s210判斷所述業(yè)務(wù)執(zhí)行時(shí)間是否出現(xiàn)異常;步驟s220當(dāng)所述業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),獲取所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù);步驟s230根據(jù)預(yù)設(shè)規(guī)則,將獲取的出現(xiàn)異常的所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)更新;步驟s240根據(jù)所述關(guān)鍵業(yè)務(wù)模塊的所述出錯(cuò)次數(shù),判斷所述關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常。具體的,判斷統(tǒng)計(jì)的關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間是否出現(xiàn)異常具體包括:判斷統(tǒng)計(jì)的業(yè)務(wù)執(zhí)行時(shí)間是否在預(yù)設(shè)執(zhí)行時(shí)間范圍內(nèi),如果在的話,就說(shuō)明業(yè)務(wù)執(zhí)行時(shí)間未出現(xiàn)異常;如果不在的話,就說(shuō)明業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常。當(dāng)然,判斷業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常的方式也可以為其他方式,并不局限于上述那一種。運(yùn)營(yíng)維護(hù)人員會(huì)根據(jù)大數(shù)據(jù)得出每個(gè)關(guān)鍵業(yè)務(wù)模塊的標(biāo)準(zhǔn)執(zhí)行時(shí)間,作為預(yù)設(shè)執(zhí)行時(shí)間,將實(shí)時(shí)統(tǒng)計(jì)的當(dāng)前業(yè)務(wù)執(zhí)行時(shí)間和預(yù)設(shè)執(zhí)行時(shí)間進(jìn)行比較,若當(dāng)前的業(yè)務(wù)執(zhí)行時(shí)間超過(guò)了對(duì)應(yīng)關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間,則需要獲取并更新此關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù),以便后續(xù)記錄下,為判斷關(guān)鍵業(yè)務(wù)模塊是否出現(xiàn)異常作為判斷依據(jù)。需要注意的是,當(dāng)關(guān)鍵業(yè)務(wù)模塊的數(shù)量為多個(gè)時(shí),每個(gè)關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間是不同的,因此,需要將每個(gè)關(guān)鍵業(yè)務(wù)模塊當(dāng)前的業(yè)務(wù)執(zhí)行時(shí)間與其對(duì)應(yīng)的預(yù)設(shè)執(zhí)行時(shí)間進(jìn)行判斷,這樣才能確認(rèn)是否需要更新各關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)。之所以每個(gè)關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間不同,是因?yàn)椋總€(gè)關(guān)鍵業(yè)務(wù)模塊其處理的業(yè)務(wù)不同。因此,每個(gè)關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間都有各自的判斷標(biāo)準(zhǔn),例如:如表一,若統(tǒng)計(jì)得到報(bào)文處理模塊的業(yè)務(wù)執(zhí)行時(shí)間為0.9秒/條,將其與報(bào)文處理模塊的預(yù)設(shè)執(zhí)行時(shí)間1秒/條進(jìn)行比較,認(rèn)為報(bào)文處理模塊沒(méi)有出現(xiàn)異常,不需要更新它的出錯(cuò)次數(shù);若統(tǒng)計(jì)得到報(bào)警信息處理模塊的業(yè)務(wù)執(zhí)行時(shí)間為11毫秒/條,將其與報(bào)警信息處理模塊的預(yù)設(shè)執(zhí)行時(shí)間10毫秒/條進(jìn)行比較,認(rèn)為報(bào)警信息處理模塊出現(xiàn)異常,需要獲取并更新報(bào)警信息處理模塊的出錯(cuò)次數(shù)。表一關(guān)鍵業(yè)務(wù)模塊預(yù)設(shè)執(zhí)行時(shí)間業(yè)務(wù)執(zhí)行時(shí)間報(bào)文處理模塊1秒/條(報(bào)文)0.9秒/條報(bào)警信息處理模塊10毫秒/條(報(bào)警信息)11毫秒/條當(dāng)業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),可以從數(shù)據(jù)庫(kù)中獲取出現(xiàn)異常的業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù),從而按照預(yù)設(shè)規(guī)則進(jìn)行更新。對(duì)出錯(cuò)次數(shù)進(jìn)行更新的預(yù)設(shè)規(guī)則可以由運(yùn)營(yíng)維護(hù)人員根據(jù)實(shí)際情況進(jìn)行設(shè)定,例如:每出一次錯(cuò),就加一,初始值為零;或者,以二十六個(gè)字母為順序進(jìn)行更新,初始值為a,第一次出錯(cuò),出錯(cuò)次數(shù)變?yōu)閎,第二次出錯(cuò),由b變?yōu)閏;初始值為20,每出一次錯(cuò),就減一,直到減到零,則認(rèn)為關(guān)鍵業(yè)務(wù)模塊發(fā)生異常。優(yōu)選地,所述步驟210具體包括:步驟211判斷所述業(yè)務(wù)執(zhí)行時(shí)間是否超過(guò)所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間;所述步驟s220具體包括:步驟s221當(dāng)所述業(yè)務(wù)執(zhí)行時(shí)間超過(guò)所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間時(shí),判斷所述關(guān)鍵業(yè)務(wù)模塊是否在異常數(shù)據(jù)庫(kù)中;步驟s222當(dāng)所述關(guān)鍵業(yè)務(wù)模塊在所述異常數(shù)據(jù)庫(kù)時(shí),獲取所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù);步驟s223當(dāng)所述關(guān)鍵業(yè)務(wù)模塊未在所述異常數(shù)據(jù)庫(kù)時(shí),將所述關(guān)鍵業(yè)務(wù)模塊添加入所述異常數(shù)據(jù)庫(kù),將所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)設(shè)置為初始值,并獲取所述出錯(cuò)次數(shù)。具體的,專門開(kāi)辟一個(gè)異常數(shù)據(jù)庫(kù),用來(lái)存儲(chǔ)關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù),當(dāng)出現(xiàn)異常的業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊已經(jīng)在異常數(shù)據(jù)庫(kù)時(shí),直接獲取所述關(guān)鍵業(yè)務(wù)模塊當(dāng)前的出錯(cuò)次數(shù)(這里可以理解為:這個(gè)關(guān)鍵業(yè)務(wù)模塊已經(jīng)出錯(cuò)過(guò)了,因此被添加進(jìn)了異常數(shù)據(jù)庫(kù)中;也可以理解為,在這個(gè)異常數(shù)據(jù)庫(kù)中為每個(gè)關(guān)鍵業(yè)務(wù)模塊開(kāi)辟了空間存儲(chǔ)其出錯(cuò)次數(shù));當(dāng)關(guān)鍵業(yè)務(wù)模塊不在異常數(shù)據(jù)庫(kù)時(shí),將關(guān)鍵業(yè)務(wù)模塊添加進(jìn)異常數(shù)據(jù)庫(kù),并設(shè)置其出錯(cuò)次數(shù)為初始值,之后再以此初始值為基礎(chǔ)進(jìn)行更新。例如:當(dāng)發(fā)現(xiàn)報(bào)文處理模塊的業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),先判斷報(bào)文處理模塊是否在異常數(shù)據(jù)庫(kù)中,1)若有的話,則直接獲取它的出錯(cuò)次數(shù)(假設(shè)為3);2)若沒(méi)有的話,將報(bào)文處理模塊添加進(jìn)異常數(shù)據(jù)庫(kù),并設(shè)置其出錯(cuò)次數(shù)為初始值(例如:0)。然后根據(jù)預(yù)設(shè)規(guī)則,以獲取的出錯(cuò)次數(shù)為基礎(chǔ),進(jìn)行更新,假設(shè)預(yù)設(shè)規(guī)則為每次出錯(cuò)加一,對(duì)1)的出錯(cuò)次數(shù)更新為3+1=4,對(duì)2)的出錯(cuò)次數(shù)更新為0+1=1??梢酝ㄟ^(guò)redisincr命令來(lái)將業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常的關(guān)鍵業(yè)務(wù)模塊加入到redis(若此關(guān)鍵業(yè)務(wù)模塊沒(méi)有被加入到redis中的話,redis相當(dāng)于異常數(shù)據(jù)庫(kù))中,并把關(guān)鍵業(yè)務(wù)模塊的相應(yīng)鍵(即,出錯(cuò)次數(shù))值加一。redis是一個(gè)開(kāi)源(bsd許可)、內(nèi)存存儲(chǔ)的數(shù)據(jù)結(jié)構(gòu)服務(wù)器,redis是一個(gè)速度非??斓姆顷P(guān)系數(shù)據(jù)庫(kù),它支持字符串、哈希表、列表、集合、有序集合,位圖,hyperloglogs等數(shù)據(jù)類型,內(nèi)置復(fù)制、lua腳本、lru收回、事務(wù)以及不同級(jí)別磁盤持久化功能。優(yōu)選地,所述步驟s240包括:步驟s241當(dāng)所述出錯(cuò)次數(shù)不為初始值的持續(xù)時(shí)間達(dá)到預(yù)設(shè)時(shí)間時(shí),判斷在所述異常數(shù)據(jù)庫(kù)中的所述關(guān)鍵業(yè)務(wù)模塊的所述出錯(cuò)次數(shù)在預(yù)設(shè)時(shí)間內(nèi)是否大于預(yù)設(shè)警戒值;步驟s242當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)大于所述預(yù)設(shè)警戒值時(shí),則認(rèn)為所述出錯(cuò)次數(shù)對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常,執(zhí)行步驟s300。步驟s241進(jìn)一步包括:當(dāng)所述出錯(cuò)次數(shù)不為初始值的持續(xù)時(shí)間未達(dá)到預(yù)設(shè)時(shí)間時(shí),跳轉(zhuǎn)至步驟s100。具體的,一般情況下,考慮到云ac性能或者外部接口的連接變化,一段時(shí)間內(nèi)少量的性能下降情況(即,業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)少量的異常情況)可以忽略不計(jì),沒(méi)有必要一出現(xiàn)問(wèn)題就通知運(yùn)營(yíng)維護(hù)人員。如果云ac發(fā)生異常情況,比如數(shù)據(jù)庫(kù)讀寫變慢,外部接口通訊時(shí)間變長(zhǎng),那么在這個(gè)時(shí)間段內(nèi),大部分的關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間都會(huì)超過(guò)預(yù)設(shè)執(zhí)行時(shí)間,這時(shí)可以認(rèn)為相應(yīng)的關(guān)鍵業(yè)務(wù)模塊已經(jīng)發(fā)生了異常,這種判斷方法在保證云ac正常運(yùn)行的情況下,監(jiān)聽(tīng)效率更高。如上所述,當(dāng)關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)少量次數(shù)的異常時(shí),這種情況是可以忽略的,只有在預(yù)設(shè)時(shí)間內(nèi)出錯(cuò)次數(shù)大于預(yù)設(shè)警戒值時(shí),才認(rèn)為其發(fā)生異常,需要發(fā)送異常提示信息,多種情況的考慮優(yōu)化了云ac的監(jiān)聽(tīng)過(guò)程,提高了其工作效率。另外,在發(fā)送異常提示信息后,運(yùn)營(yíng)維護(hù)人員會(huì)在查看、解決問(wèn)題后,將出錯(cuò)次數(shù)更新為初始值?;蛘?,運(yùn)營(yíng)維護(hù)人員會(huì)在查看、解決問(wèn)題后,將出錯(cuò)次數(shù)和/或出錯(cuò)次數(shù)對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊從異常數(shù)據(jù)庫(kù)中刪除。優(yōu)選地,所述步驟s240還包括:步驟s243當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)不大于所述預(yù)設(shè)警戒值時(shí),則將所述出錯(cuò)次數(shù)更新為初始值。具體的,例如:預(yù)設(shè)時(shí)間為1分鐘,預(yù)設(shè)警戒值為20,當(dāng)?shù)谝淮伟l(fā)現(xiàn)關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),就將其出錯(cuò)次數(shù)從0更新為1,并開(kāi)始統(tǒng)計(jì)此關(guān)鍵業(yè)務(wù)在1分鐘內(nèi)的出錯(cuò)次數(shù)是否大于20,如果在1分鐘內(nèi)其出錯(cuò)次數(shù)大于20,則認(rèn)為此關(guān)鍵業(yè)務(wù)模塊出現(xiàn)異常,需要發(fā)送異常提示信息。如果在1分鐘內(nèi)其出錯(cuò)次數(shù)沒(méi)有大于20,則認(rèn)為此關(guān)鍵業(yè)務(wù)模塊未出現(xiàn)異常,將此出錯(cuò)次數(shù)更新為初始值,當(dāng)下次發(fā)生異常時(shí),再重新開(kāi)始。在本發(fā)明的另一個(gè)實(shí)施例中,除與上述相同的之外,所述步驟s240還包括:步驟s244當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)不大于所述預(yù)設(shè)警戒值時(shí),則將所述出錯(cuò)次數(shù)和/或所述出錯(cuò)次數(shù)對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊從所述異常數(shù)據(jù)庫(kù)中刪除。具體的,當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)不大于所述預(yù)設(shè)警戒值時(shí),將所述出錯(cuò)次數(shù)對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊從異常數(shù)據(jù)庫(kù)中刪除,具體步驟可以參考如下:通過(guò)expire命令設(shè)定關(guān)鍵業(yè)務(wù)模塊的鍵(出錯(cuò)次數(shù))有效期,到期后鍵在異常數(shù)據(jù)庫(kù)中自動(dòng)刪除。優(yōu)選地,所述步驟s200之后還包括:步驟s400當(dāng)所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),打開(kāi)發(fā)生異常的所述關(guān)鍵業(yè)務(wù)模塊的細(xì)粒度日志。具體的,當(dāng)關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),可以將此發(fā)生異常的關(guān)鍵業(yè)務(wù)模塊的細(xì)粒度日志打開(kāi),方便后續(xù)運(yùn)營(yíng)維護(hù)人員查看,及時(shí)了解采取哪種措施排除問(wèn)題。需要注意的是,步驟s300和步驟s400的順序并不限制,可以先運(yùn)行步驟s400,再運(yùn)行步驟s300;也可以先運(yùn)行步驟s300,再運(yùn)行步驟s400。在本發(fā)明的另一個(gè)實(shí)施例中,如圖2所示,一種基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)方法,包括:步驟s100實(shí)時(shí)監(jiān)聽(tīng)并統(tǒng)計(jì)云ac中關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間;步驟s200根據(jù)統(tǒng)計(jì)的所述業(yè)務(wù)執(zhí)行時(shí)間,判斷所述關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常;所述步驟s200包括:步驟s210判斷所述業(yè)務(wù)執(zhí)行時(shí)間是否出現(xiàn)異常;所述步驟210具體包括:步驟211判斷所述業(yè)務(wù)執(zhí)行時(shí)間是否超過(guò)所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間;步驟s220當(dāng)所述業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),獲取所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù);所述步驟s220具體包括:步驟s221當(dāng)所述業(yè)務(wù)執(zhí)行時(shí)間超過(guò)所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間時(shí),判斷所述關(guān)鍵業(yè)務(wù)模塊是否在異常數(shù)據(jù)庫(kù)中;步驟s222當(dāng)所述關(guān)鍵業(yè)務(wù)模塊在所述異常數(shù)據(jù)庫(kù)時(shí),獲取所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù);步驟s223當(dāng)所述關(guān)鍵業(yè)務(wù)模塊未在所述異常數(shù)據(jù)庫(kù)時(shí),將所述關(guān)鍵業(yè)務(wù)模塊添加入所述異常數(shù)據(jù)庫(kù),將所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)設(shè)置為初始值,并獲取所述出錯(cuò)次數(shù);步驟s230根據(jù)預(yù)設(shè)規(guī)則,將獲取的出現(xiàn)異常的所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)更新;步驟s240根據(jù)所述關(guān)鍵業(yè)務(wù)模塊的所述出錯(cuò)次數(shù),判斷所述關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常;所述步驟s240包括:步驟s241當(dāng)所述出錯(cuò)次數(shù)不為初始值的持續(xù)時(shí)間達(dá)到預(yù)設(shè)時(shí)間時(shí),判斷在所述異常數(shù)據(jù)庫(kù)中的所述關(guān)鍵業(yè)務(wù)模塊的所述出錯(cuò)次數(shù)在預(yù)設(shè)時(shí)間內(nèi)是否大于預(yù)設(shè)警戒值;當(dāng)所述出錯(cuò)次數(shù)不為初始值的持續(xù)時(shí)間未達(dá)到預(yù)設(shè)時(shí)間時(shí),跳轉(zhuǎn)至步驟s100;步驟s242當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)大于所述預(yù)設(shè)警戒值時(shí),則認(rèn)為所述出錯(cuò)次數(shù)對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常,執(zhí)行步驟s300步驟s244當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)不大于所述預(yù)設(shè)警戒值時(shí),則將所述出錯(cuò)次數(shù)和/或所述出錯(cuò)次數(shù)對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊從所述異常數(shù)據(jù)庫(kù)中刪除;(步驟s244可以由步驟s243代替,圖中未示出;步驟s243當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)不大于所述預(yù)設(shè)警戒值時(shí),則將所述出錯(cuò)次數(shù)更新為初始值);步驟s300當(dāng)所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),發(fā)送異常提示信息;步驟s400當(dāng)所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),打開(kāi)發(fā)生異常的所述關(guān)鍵業(yè)務(wù)模塊的細(xì)粒度日志。具體的,本發(fā)明的基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)方法,只需要通過(guò)監(jiān)聽(tīng)其業(yè)務(wù)執(zhí)行時(shí)間以及相應(yīng)的出錯(cuò)次數(shù),就可以達(dá)到監(jiān)聽(tīng)關(guān)鍵業(yè)務(wù)模塊是否出現(xiàn)異常的目的,不需要一直監(jiān)聽(tīng)各關(guān)鍵業(yè)務(wù)模塊的細(xì)粒度日志,大大降低了云ac的性能占用率,在保證云ac得到監(jiān)聽(tīng)的情況下,大大改善了用戶的使用體驗(yàn)。在本發(fā)明的另一個(gè)實(shí)施例中,如圖3所示,一種基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)系統(tǒng),包括:關(guān)鍵業(yè)務(wù)模塊10;監(jiān)聽(tīng)統(tǒng)計(jì)模塊20,與所述關(guān)鍵業(yè)務(wù)模塊電連接,用于實(shí)時(shí)監(jiān)聽(tīng)并統(tǒng)計(jì)云ac中所述關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間;異常判斷模塊30,與所述監(jiān)聽(tīng)統(tǒng)計(jì)模塊電連接,所述異常判斷模塊根據(jù)所述監(jiān)聽(tīng)統(tǒng)計(jì)模塊統(tǒng)計(jì)的所述業(yè)務(wù)執(zhí)行時(shí)間,判斷所述關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常;異常提示模塊40,與所述異常判斷模塊電連接,當(dāng)所述異常判斷模塊判斷所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),所述異常提示模塊發(fā)送異常提示信息。具體的,此系統(tǒng)是基于云ac實(shí)現(xiàn)的,關(guān)鍵業(yè)務(wù)模塊在云ac中起著極為重要的作用,是考量云ac的業(yè)務(wù)性能能不能滿足使用性能指標(biāo)的關(guān)鍵因素。根據(jù)關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間,來(lái)判斷關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常,若發(fā)生異常,就立即發(fā)送異常提示信息給運(yùn)營(yíng)維護(hù)人員,以便他們及時(shí)采取相應(yīng)的措施來(lái)排除問(wèn)題,使云ac恢復(fù)正常的工作性能。云ac可以通過(guò)郵件通道將異常信息發(fā)送給運(yùn)營(yíng)維護(hù)人員,也可以以報(bào)警聲音作為異常提示信息發(fā)出。在本發(fā)明的另一個(gè)實(shí)施例中,除與上述相同的之外,監(jiān)聽(tīng)并統(tǒng)計(jì)云ac的關(guān)鍵業(yè)務(wù)模塊的數(shù)量可以為多個(gè),即監(jiān)聽(tīng)并統(tǒng)計(jì)多個(gè)關(guān)鍵業(yè)務(wù)模塊各自的業(yè)務(wù)執(zhí)行時(shí)間,分別對(duì)各關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間進(jìn)行判斷,當(dāng)有某一個(gè)或一些關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),就發(fā)送異常提示信息。優(yōu)選地,在發(fā)送異常提示信息時(shí),把發(fā)生異常的關(guān)鍵業(yè)務(wù)模塊的名稱一起發(fā)送,便于讓運(yùn)營(yíng)維護(hù)人員了解具體哪個(gè)或哪些關(guān)鍵業(yè)務(wù)模塊出問(wèn)題。在本發(fā)明的另一個(gè)實(shí)施例中,除與上述相同的之外,所述異常判斷模塊30包括:時(shí)間判斷子模塊31,用于判斷所述業(yè)務(wù)執(zhí)行時(shí)間是否出現(xiàn)異常;次數(shù)判斷子模塊32,當(dāng)異常數(shù)據(jù)庫(kù)將所述出錯(cuò)次數(shù)更新后,所述次數(shù)判斷子模塊根據(jù)所述關(guān)鍵業(yè)務(wù)模塊的所述出錯(cuò)次數(shù),判斷所述關(guān)鍵業(yè)務(wù)模塊是否發(fā)生異常;所述基于云ac的關(guān)鍵業(yè)務(wù)模塊監(jiān)聽(tīng)系統(tǒng)還包括:次數(shù)獲取模塊50,與所述異常判斷模塊電連接,當(dāng)所述異常判斷模塊判斷所述業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),所述次數(shù)獲取模塊獲取所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù);所述異常數(shù)據(jù)庫(kù)60,與所述次數(shù)獲取模塊、所述異常判斷模塊電連接,當(dāng)所述次數(shù)獲取模塊獲取了所述出錯(cuò)次數(shù)時(shí),所述異常數(shù)據(jù)庫(kù)根據(jù)預(yù)設(shè)規(guī)則,將獲取的出現(xiàn)異常的所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)更新。具體的,判斷統(tǒng)計(jì)的關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間是否出現(xiàn)異常具體包括:判斷統(tǒng)計(jì)的業(yè)務(wù)執(zhí)行時(shí)間是否在預(yù)設(shè)執(zhí)行時(shí)間范圍內(nèi),如果在的話,就說(shuō)明業(yè)務(wù)執(zhí)行時(shí)間未出現(xiàn)異常;如果不在的話,就說(shuō)明業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常。當(dāng)然,判斷業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常的方式也可以為其他方式,并不局限于上述那一種。運(yùn)營(yíng)維護(hù)人員會(huì)根據(jù)大數(shù)據(jù)得出每個(gè)關(guān)鍵業(yè)務(wù)模塊的標(biāo)準(zhǔn)執(zhí)行時(shí)間,作為預(yù)設(shè)執(zhí)行時(shí)間,將實(shí)時(shí)統(tǒng)計(jì)的當(dāng)前業(yè)務(wù)執(zhí)行時(shí)間和預(yù)設(shè)執(zhí)行時(shí)間進(jìn)行比較,若當(dāng)前的業(yè)務(wù)執(zhí)行時(shí)間超過(guò)了對(duì)應(yīng)關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間,則需要獲取并更新此關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù),以便后續(xù)記錄下,為判斷關(guān)鍵業(yè)務(wù)模塊是否出現(xiàn)異常作為判斷依據(jù)。需要注意的是,當(dāng)關(guān)鍵業(yè)務(wù)模塊的數(shù)量為多個(gè)時(shí),每個(gè)關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間是不同的,因此,需要將每個(gè)關(guān)鍵業(yè)務(wù)模塊當(dāng)前的業(yè)務(wù)執(zhí)行時(shí)間與其對(duì)應(yīng)的預(yù)設(shè)執(zhí)行時(shí)間進(jìn)行判斷,這樣才能確認(rèn)是否需要更新各關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)。之所以每個(gè)關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間不同,是因?yàn)?,每個(gè)關(guān)鍵業(yè)務(wù)模塊其處理的業(yè)務(wù)不同。具體的例子可以參見(jiàn)相應(yīng)的方法實(shí)施例,在此不再詳細(xì)描述。優(yōu)選地,如圖4所示,所述時(shí)間判斷子模塊31,進(jìn)一步用于判斷所述業(yè)務(wù)執(zhí)行時(shí)間是否超過(guò)所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊的預(yù)設(shè)執(zhí)行時(shí)間;所述異常判斷模塊還包括:模塊判斷子模塊33,當(dāng)所述時(shí)間判斷子模塊判斷所述業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),所述模塊判斷子模塊判斷所述關(guān)鍵業(yè)務(wù)模塊是否在所述異常數(shù)據(jù)庫(kù)中;所述異常數(shù)據(jù)庫(kù)60,當(dāng)所述異常判斷模塊判斷所述關(guān)鍵業(yè)務(wù)模塊未在所述異常數(shù)據(jù)庫(kù)時(shí),所述異常數(shù)據(jù)庫(kù)進(jìn)一步用于將所述關(guān)鍵業(yè)務(wù)模塊添加入所述異常數(shù)據(jù)庫(kù),將所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)設(shè)置為初始值;所述次數(shù)獲取模塊50,進(jìn)一步用于獲取所述業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)。具體的,專門開(kāi)辟一個(gè)異常數(shù)據(jù)庫(kù),用來(lái)存儲(chǔ)關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù),當(dāng)出現(xiàn)異常的業(yè)務(wù)執(zhí)行時(shí)間對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊已經(jīng)在異常數(shù)據(jù)庫(kù)時(shí),直接獲取所述關(guān)鍵業(yè)務(wù)模塊當(dāng)前的出錯(cuò)次數(shù)(這里可以理解為:這個(gè)關(guān)鍵業(yè)務(wù)模塊已經(jīng)出錯(cuò)過(guò)了,因此被添加進(jìn)了異常數(shù)據(jù)庫(kù)中;也可以理解為,在這個(gè)異常數(shù)據(jù)庫(kù)中為每個(gè)關(guān)鍵業(yè)務(wù)模塊開(kāi)辟了空間存儲(chǔ)其出錯(cuò)次數(shù));當(dāng)關(guān)鍵業(yè)務(wù)模塊不在異常數(shù)據(jù)庫(kù)時(shí),將關(guān)鍵業(yè)務(wù)模塊添加進(jìn)異常數(shù)據(jù)庫(kù),并設(shè)置其出錯(cuò)次數(shù)為初始值,之后再以此初始值為基礎(chǔ)進(jìn)行更新。具體的例子可以參見(jiàn)相應(yīng)的方法實(shí)施例,在此不再詳細(xì)描述。優(yōu)選地,所述次數(shù)判斷子模塊32,進(jìn)一步用于當(dāng)所述出錯(cuò)次數(shù)不為初始值的持續(xù)時(shí)間達(dá)到預(yù)設(shè)時(shí)間時(shí),判斷在所述異常數(shù)據(jù)庫(kù)中的所述關(guān)鍵業(yè)務(wù)模塊的所述出錯(cuò)次數(shù)在預(yù)設(shè)時(shí)間內(nèi)是否大于預(yù)設(shè)警戒值;以及,當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)大于所述預(yù)設(shè)警戒值時(shí),所述次數(shù)判斷子模塊認(rèn)為所述出錯(cuò)次數(shù)對(duì)應(yīng)的所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常。具體的,一般情況下,考慮到云ac性能或者外部接口的連接變化,一段時(shí)間內(nèi)少量的性能下降情況(即,業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)少量的異常情況)可以忽略不計(jì),沒(méi)有必要一出現(xiàn)問(wèn)題就通知運(yùn)營(yíng)維護(hù)人員。如果云ac發(fā)生異常情況,比如數(shù)據(jù)庫(kù)讀寫變慢,外部接口通訊時(shí)間變長(zhǎng),那么在這個(gè)時(shí)間段內(nèi),大部分的關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間都會(huì)超過(guò)預(yù)設(shè)執(zhí)行時(shí)間,這時(shí)可以認(rèn)為相應(yīng)的關(guān)鍵業(yè)務(wù)模塊已經(jīng)發(fā)生了異常,這種判斷方法在保證云ac正常運(yùn)行的情況下,監(jiān)聽(tīng)效率更高。如上所述,當(dāng)關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)少量次數(shù)的異常時(shí),這種情況是可以忽略的,只有在預(yù)設(shè)時(shí)間內(nèi)出錯(cuò)次數(shù)大于預(yù)設(shè)警戒值時(shí),才認(rèn)為其發(fā)生異常,需要發(fā)送異常提示信息,多種情況的考慮優(yōu)化了云ac的監(jiān)聽(tīng)過(guò)程,提高了其工作效率。在本發(fā)明的另一個(gè)實(shí)施例中,除與上述相同的之外,所述異常數(shù)據(jù)庫(kù),當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)不大于所述預(yù)設(shè)警戒值時(shí),所述異常數(shù)據(jù)庫(kù)60進(jìn)一步用于將所述出錯(cuò)次數(shù)更新為初始值。具體的,例如:預(yù)設(shè)時(shí)間為1分鐘,預(yù)設(shè)警戒值為20,當(dāng)?shù)谝淮伟l(fā)現(xiàn)關(guān)鍵業(yè)務(wù)模塊的業(yè)務(wù)執(zhí)行時(shí)間出現(xiàn)異常時(shí),就將其出錯(cuò)次數(shù)從0更新為1,并開(kāi)始統(tǒng)計(jì)此關(guān)鍵業(yè)務(wù)在1分鐘內(nèi)的出錯(cuò)次數(shù)是否大于20,如果在1分鐘內(nèi)其出錯(cuò)次數(shù)大于20,則認(rèn)為此關(guān)鍵業(yè)務(wù)模塊出現(xiàn)異常,需要發(fā)送異常提示信息。如果在1分鐘內(nèi)其出錯(cuò)次數(shù)沒(méi)有大于20,則認(rèn)為此關(guān)鍵業(yè)務(wù)模塊未出現(xiàn)異常,將此出錯(cuò)次數(shù)更新為初始值,當(dāng)下次發(fā)生異常時(shí),再重新開(kāi)始。通過(guò)統(tǒng)計(jì)預(yù)設(shè)時(shí)間內(nèi)的出錯(cuò)次數(shù)確認(rèn)云ac是否真的出現(xiàn)異常的方法,杜絕了云ac短暫性、偶然性出現(xiàn)問(wèn)題的情況,降低了運(yùn)營(yíng)維護(hù)人員得到無(wú)價(jià)值的異常提示信息的機(jī)會(huì)。在本發(fā)明的另一個(gè)實(shí)施例中,除與上述相同的之外,所述異常數(shù)據(jù)庫(kù)60,當(dāng)所述出錯(cuò)次數(shù)在所述預(yù)設(shè)時(shí)間內(nèi)不大于所述預(yù)設(shè)警戒值時(shí),所述異常數(shù)據(jù)庫(kù)進(jìn)一步用于將所述出錯(cuò)次數(shù)和/或所述出錯(cuò)次數(shù)對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊從所述異常數(shù)據(jù)庫(kù)中刪除。具體的,當(dāng)在預(yù)設(shè)時(shí)間內(nèi)關(guān)鍵業(yè)務(wù)模塊的出錯(cuò)次數(shù)不大于預(yù)設(shè)警戒值時(shí),就將出錯(cuò)次數(shù)刪除,為下次關(guān)鍵業(yè)務(wù)模塊出錯(cuò)時(shí)重新統(tǒng)計(jì)作準(zhǔn)備。或者,將出錯(cuò)次數(shù)和出錯(cuò)次數(shù)對(duì)應(yīng)的關(guān)鍵業(yè)務(wù)模塊一起從異常數(shù)據(jù)庫(kù)中刪除,一來(lái)釋放異常數(shù)據(jù)庫(kù)的存儲(chǔ)空間,二來(lái)也為下次關(guān)鍵業(yè)務(wù)模塊出錯(cuò)時(shí)重新統(tǒng)計(jì)作準(zhǔn)備。在本發(fā)明的另一個(gè)實(shí)施例中,如圖4所示,除與上述相同的之外,還包括:日志管理模塊70,與所述異常判斷模塊電連接,當(dāng)所述異常判斷模塊判斷所述關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),所述日志管理模塊打開(kāi)發(fā)生異常的所述關(guān)鍵業(yè)務(wù)模塊的細(xì)粒度日志。具體的,當(dāng)關(guān)鍵業(yè)務(wù)模塊發(fā)生異常時(shí),可以將此發(fā)生異常的關(guān)鍵業(yè)務(wù)模塊的細(xì)粒度日志打開(kāi),方便后續(xù)運(yùn)營(yíng)維護(hù)人員查看,及時(shí)了解采取哪種措施排除問(wèn)題。需要注意的是,打開(kāi)細(xì)粒度日志和發(fā)送異常提示信息的順序并不作限定。本發(fā)明在不影響云ac整體性能的情況下,可以對(duì)云ac的關(guān)鍵業(yè)務(wù)模塊進(jìn)行監(jiān)聽(tīng),當(dāng)出現(xiàn)異常時(shí),及時(shí)通知運(yùn)營(yíng)維護(hù)人員,大大提高了用戶的使用體驗(yàn)。應(yīng)當(dāng)說(shuō)明的是,上述實(shí)施例均可根據(jù)需要自由組合。以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本
技術(shù)領(lǐng)域:
的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。當(dāng)前第1頁(yè)12