本發(fā)明涉及應(yīng)用接口管理技術(shù),特別是涉及一種三方接口異常監(jiān)控裝置。
背景技術(shù):
在應(yīng)用軟件開發(fā)過程中,隨著微服務(wù)的增多,系統(tǒng)需要用到越來越多的三方接口,比如短信發(fā)送、支付、信息推送、天氣查詢等,三方接口的管理也成為了隨之而來的問題。例如,在三方接口出現(xiàn)異常時(shí),會(huì)切斷三方接口,然后對(duì)異常進(jìn)行排查和解決,最后在異常排除后再人工恢復(fù)該三方接口。
上述異常處理方法存在如下問題:無法實(shí)現(xiàn)對(duì)三方接口的切斷、恢復(fù)全自動(dòng)化管理,另外,三方接口的恢復(fù)判斷需要人工,且業(yè)務(wù)恢復(fù)的時(shí)候一般是整體恢復(fù),有可能再一次引起三方接口掛起的可能。
技術(shù)實(shí)現(xiàn)要素:
鑒于以上所述現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的在于提供一種三方接口異常監(jiān)控裝置,用于解決現(xiàn)有應(yīng)用接口管理無法做到異常自動(dòng)恢復(fù)和缺乏預(yù)處理機(jī)制的問題。
為實(shí)現(xiàn)上述目的及其他相關(guān)目的,本發(fā)明提供以下解決方案:
一種三方接口異常監(jiān)控裝置,包括:異常偵測(cè)模塊,用于保持對(duì)一應(yīng)用接口進(jìn)行異常監(jiān)測(cè);預(yù)處理模塊,用于在監(jiān)測(cè)到所述應(yīng)用接口為異常時(shí),讀取一預(yù)處理程序?qū)λ霎惓_M(jìn)行處理;第一預(yù)恢復(fù)檢測(cè)模塊,用于在處理完成后,第一次檢測(cè)所述應(yīng)用接口是否正常:若是,讀取預(yù)設(shè)的一配置信息進(jìn)行灰度發(fā)布,轉(zhuǎn)入一第二預(yù)恢復(fù)檢測(cè)模塊進(jìn)行處理;若否,轉(zhuǎn)入所述預(yù)處理模塊進(jìn)行處理;所述第二預(yù)恢復(fù)檢測(cè)模塊,用于第二次檢測(cè)所述應(yīng)用接口是否正常,若否,則返回第一預(yù)恢復(fù)檢測(cè)模塊進(jìn)行處理,若是,則恢復(fù)應(yīng)用。
在一優(yōu)選方案中,所述異常偵測(cè)模塊包括:第一計(jì)算單元,用于計(jì)算所述應(yīng)用接口連續(xù)錯(cuò)誤的次數(shù);第二計(jì)算單元,用于計(jì)算所述應(yīng)用接口在一時(shí)間段內(nèi)的成功率;異常判斷單元,用于根據(jù)所述次數(shù)和成功率確定所述應(yīng)用接口是否為異常。
本發(fā)明具有以下有益效果:本發(fā)明針對(duì)三方接口異常的情況自動(dòng)處理,比起現(xiàn)有技術(shù)在異常時(shí)采用一般的告警能達(dá)到更好的效果,因?yàn)?,告警并沒有采取措施的話,那么是起不到任何監(jiān)控或預(yù)防的效果的;此外,本發(fā)明針對(duì)三方接口恢復(fù)可以采用自動(dòng)方式,并且采用灰度發(fā)布逐漸恢復(fù),恢復(fù)過程更加可靠。
附圖說明
圖1為根據(jù)本發(fā)明之方法面給出的一種三方接口異常監(jiān)控方法的流程圖。
圖2為根據(jù)本發(fā)明之方法面給出的對(duì)一應(yīng)用接口進(jìn)行異常監(jiān)測(cè)的流程圖。
圖3為根據(jù)本發(fā)明之裝置面給出的一種三方接口異常監(jiān)控裝置的原理圖。
圖4為根據(jù)本發(fā)明之裝置面給出的異常偵測(cè)模塊的一種實(shí)施原理圖。
元件標(biāo)號(hào)說明
3 三方接口異常監(jiān)控裝置
31 異常偵測(cè)模塊
311 第一計(jì)算單元
312 第二計(jì)算單元
313 異常判斷單元
32 預(yù)處理模塊
33 第一預(yù)恢復(fù)檢測(cè)模塊
34 第二預(yù)恢復(fù)檢測(cè)模塊
S101~S104 步驟
S201~S204 步驟
具體實(shí)施方式
以下通過特定的具體實(shí)例說明本發(fā)明的實(shí)施方式,本領(lǐng)域技術(shù)人員可由本說明書所揭露的內(nèi)容輕易地了解本發(fā)明的其他優(yōu)點(diǎn)與功效。本發(fā)明還可以通過另外不同的具體實(shí)施方式加以實(shí)施或應(yīng)用,本說明書中的各項(xiàng)細(xì)節(jié)也可以基于不同觀點(diǎn)與應(yīng)用,在沒有背離本發(fā)明的精神下進(jìn)行各種修飾或改變。需說明的是,在不沖突的情況下,以下實(shí)施例及實(shí)施例中的特征可以相互組合。
需要說明的是,以下實(shí)施例中所提供的圖示僅以示意方式說明本發(fā)明的基本構(gòu)想,遂圖式中僅顯示與本發(fā)明中有關(guān)的組件而非按照實(shí)際實(shí)施時(shí)的組件數(shù)目、形狀及尺寸繪制,其實(shí)際實(shí)施時(shí)各組件的型態(tài)、數(shù)量及比例可為一種隨意的改變,且其組件布局型態(tài)也可能更為復(fù)雜。
前述說明
三方接口,也可叫:三方應(yīng)用接口或應(yīng)用接口,是指在軟件開發(fā)過程中,將現(xiàn)有的具有某一功能的應(yīng)用接入來進(jìn)行使用,這種使用是通過應(yīng)用接口來實(shí)現(xiàn),故稱作為三方應(yīng)用。
例如,在某一應(yīng)用軟件上要實(shí)現(xiàn)一個(gè)支付功能,那么只要通過應(yīng)用接口來將現(xiàn)有的支付寶、微信等支付應(yīng)用功能接入即可,不需在自己開發(fā)支付系統(tǒng)。
實(shí)施方式一
根據(jù)本發(fā)明之方法面來進(jìn)行說明
見圖1,給出了一種三方接口異常監(jiān)控方法,如圖所示,其通過順序執(zhí)行以下步驟來實(shí)現(xiàn):
步驟S101,保持對(duì)一應(yīng)用接口進(jìn)行異常監(jiān)測(cè);
步驟S102,在監(jiān)測(cè)到所述應(yīng)用接口為異常時(shí),讀取一預(yù)處理程序?qū)λ霎惓_M(jìn)行處理;
步驟S103,在處理完成后,第一次檢測(cè)所述應(yīng)用接口是否正常:若是,讀取預(yù)設(shè)的一配置信息進(jìn)行灰度發(fā)布,轉(zhuǎn)入步驟S104;若否,返回步驟S102;
步驟S104,第二次檢測(cè)所述應(yīng)用接口是否正常,若否,則返回步驟S103,若是,則恢復(fù)應(yīng)用。
其中,上述預(yù)處理程序是根據(jù)具體應(yīng)用接口社設(shè)置的一個(gè)異常已處理程序,具體的應(yīng)用其對(duì)應(yīng)的異常處理程序不同,本發(fā)明并不限制預(yù)處理程序的具體方式。
例如,在某一應(yīng)用中要顯示天氣,當(dāng)偵測(cè)到該天氣的應(yīng)用接口異常時(shí),通過設(shè)置一預(yù)處理程序來僅關(guān)閉該天氣應(yīng)用,而不需要關(guān)閉所用的應(yīng)用接口。
其中,上述灰度發(fā)布是指將應(yīng)用對(duì)部分用戶公開使用,而對(duì)其他用戶不可用,通過這種方式來逐步恢復(fù)應(yīng)用接口。因此,往往很多異常都是訪問量多大造成的,采用灰度發(fā)布可以環(huán)節(jié)這種異常情況,從而逐步回復(fù)應(yīng)用。
在一實(shí)施例中,見圖2,對(duì)一應(yīng)用接口進(jìn)行異常監(jiān)測(cè)的步驟包括:
S201,計(jì)算所述應(yīng)用接口連續(xù)錯(cuò)誤的次數(shù);
S202,計(jì)算所述應(yīng)用接口在一時(shí)間段內(nèi)的成功率;
S203,根據(jù)所述次數(shù)和成功率確定所述應(yīng)用接口是否為異常。
其中,上述應(yīng)用接口連續(xù)錯(cuò)誤的次數(shù)是指連續(xù)的數(shù)據(jù)交互都出現(xiàn)錯(cuò)誤,當(dāng)然錯(cuò)誤的類型根據(jù)應(yīng)用接口的不同而不同,例如,錯(cuò)位可以為支付頁面跳轉(zhuǎn)打不開。
但是,僅憑上述這種偵測(cè)是無法準(zhǔn)確檢測(cè)到應(yīng)用接口是否真正異常,例如,雖然連續(xù)錯(cuò)誤次數(shù)沒有到達(dá)預(yù)設(shè)的閥值,而在一時(shí)間段內(nèi),錯(cuò)誤的次數(shù)達(dá)到50%以上,那么也顯然屬于異常情況的。故必須結(jié)合上面兩種條件來綜合判斷應(yīng)用接口是否異常。
具體地,根據(jù)所述次數(shù)和成功率確定所述應(yīng)用接口是否為異常可以通過判斷該次數(shù)和成功率是否超過一預(yù)設(shè)的閥值,任一條件超過了該閥值都將被確定為異常。
實(shí)施方式二
根據(jù)本發(fā)明之裝置面來進(jìn)行說明
見圖3,給出了一種三方接口異常監(jiān)控裝置3,其包括:異常偵測(cè)模塊31,用于保持對(duì)一應(yīng)用接口進(jìn)行異常監(jiān)測(cè);預(yù)處理模塊32,用于在監(jiān)測(cè)到所述應(yīng)用接口為異常時(shí),讀取一預(yù)處理程序?qū)λ霎惓_M(jìn)行處理;第一預(yù)恢復(fù)檢測(cè)模塊33,用于在處理完成后,第一次檢測(cè)所述應(yīng)用接口是否正常:若是,讀取預(yù)設(shè)的一配置信息進(jìn)行灰度發(fā)布,轉(zhuǎn)入一第二預(yù)恢復(fù)檢測(cè)模塊34進(jìn)行處理;若否,轉(zhuǎn)入所述預(yù)處理模塊進(jìn)行處理;所述第二預(yù)恢復(fù)檢測(cè)模塊34,用于第二次檢測(cè)所述應(yīng)用接口是否正常,若否,則返回第一預(yù)恢復(fù)檢測(cè)模塊33進(jìn)行處理,若是,則恢復(fù)應(yīng)用。
在一實(shí)施例中,見圖4,所述異常偵測(cè)模塊31包括:第一計(jì)算單元311,用于計(jì)算所述應(yīng)用接口連續(xù)錯(cuò)誤的次數(shù);第二計(jì)算單元312,用于計(jì)算所述應(yīng)用接口在一時(shí)間段內(nèi)的成功率;異常判斷單元313,用于根據(jù)所述次數(shù)和成功率確定所述應(yīng)用接口是否為異常。
應(yīng)當(dāng)說明的是,上述實(shí)施方式一提供的方法可以全部由計(jì)算機(jī)程序來實(shí)現(xiàn),故本實(shí)施例例提供了一種裝置,由于該裝置解決問題的原理與方法相似,因此,裝置的實(shí)施過程及實(shí)施原理均可以參見前述方法的實(shí)施過程及實(shí)施原理描述,重復(fù)之處不再贅述。
綜上所述,本發(fā)明針對(duì)三方接口異常的情況自動(dòng)處理,比起現(xiàn)有技術(shù)在異常時(shí)采用一般的告警能達(dá)到更好的效果,因?yàn)椋婢]有采取措施的話,那么是起不到任何監(jiān)控或預(yù)防的效果的;此外,本發(fā)明針對(duì)三方接口恢復(fù)可以采用自動(dòng)方式,并且采用灰度發(fā)布逐漸恢復(fù),恢復(fù)過程更加可靠。
所以,本發(fā)明有效克服了現(xiàn)有技術(shù)中的種種缺點(diǎn)而具高度產(chǎn)業(yè)利用價(jià)值。
上述實(shí)施例僅例示性說明本發(fā)明的原理及其功效,而非用于限制本發(fā)明。任何熟悉此技術(shù)的人士皆可在不違背本發(fā)明的精神及范疇下,對(duì)上述實(shí)施例進(jìn)行修飾或改變。因此,舉凡所屬技術(shù)領(lǐng)域中具有通常知識(shí)者在未脫離本發(fā)明所揭示的精神與技術(shù)思想下所完成的一切等效修飾或改變,仍應(yīng)由本發(fā)明的權(quán)利要求所涵蓋。