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