本發(fā)明屬于通信,尤其涉及一種微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法及系統(tǒng)。
背景技術(shù):
1、在實(shí)際開發(fā)過程中,不可避免的需要接入一些第三方系統(tǒng),通常涉及與外部服務(wù)(如支付網(wǎng)關(guān)、社交媒體api、電子郵件服務(wù)、身份驗(yàn)證服務(wù)等)進(jìn)行集成。雖然這種集成能夠提供額外的功能,但它也帶來了一些挑戰(zhàn),比如可靠性、安全性、版本管理等。
2、然而,當(dāng)前由于對(duì)第三代碼管理的疏忽,將第三方依賴的代碼與目標(biāo)業(yè)務(wù)代碼緊密綁定在一起,系統(tǒng)更容易受到第三方系統(tǒng)的故障或錯(cuò)誤的影響,從而降低了系統(tǒng)的可靠性和穩(wěn)定性。當(dāng)?shù)谌较到y(tǒng)更新版本或服務(wù)協(xié)議時(shí),由于第三方依賴的代碼與目標(biāo)業(yè)務(wù)代碼緊密綁定,需要對(duì)與該系統(tǒng)有關(guān)的代碼進(jìn)行修改,增加了維護(hù)工作的復(fù)雜度,并且很難預(yù)測(cè)這種影響的程度。系統(tǒng)與第三方系統(tǒng)之間的緊密綁定導(dǎo)致系統(tǒng)對(duì)該第三方系統(tǒng)產(chǎn)生高度依賴,使得第三方系統(tǒng)難以被替換,與其他系統(tǒng)也難以整合,系統(tǒng)的安全性會(huì)受到威脅,這些依賴可能被惡意利用或攻擊,使得系統(tǒng)的安全性與可維護(hù)性變差。
技術(shù)實(shí)現(xiàn)思路
1、鑒于以上現(xiàn)有技術(shù)的不足,發(fā)明的目的在于提供一種微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法,能夠?qū)I(yè)務(wù)系統(tǒng)與第三方系統(tǒng)進(jìn)行解耦,搭建防腐層,通過防腐層對(duì)業(yè)務(wù)層與第三方系統(tǒng)進(jìn)行隔離,以使業(yè)務(wù)層通過防腐層間接調(diào)用所述第三方系統(tǒng),降低業(yè)務(wù)系統(tǒng)對(duì)第三方系統(tǒng)依賴的緊密性,提升系統(tǒng)可靠性、可維護(hù)性、擴(kuò)展性和安全性。
2、本發(fā)明的第一方面,提出了一種微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法,包括:
3、s1,構(gòu)建系統(tǒng)分層架構(gòu),所述系統(tǒng)分層架構(gòu)包括業(yè)務(wù)層、防腐層、出口網(wǎng)關(guān)層以及第三方系統(tǒng);
4、s2,搭建所述防腐層,通過所述防腐層對(duì)所述業(yè)務(wù)層與所述第三方系統(tǒng)進(jìn)行隔離,以使所述業(yè)務(wù)層通過所述防腐層間接調(diào)用所述第三方系統(tǒng);
5、s3,搭建所述出口網(wǎng)關(guān)層,以使所述防腐層通過所述出口網(wǎng)關(guān)層統(tǒng)一調(diào)用所述第三方系統(tǒng)的接口。
6、進(jìn)一步地,在所述s2之后,微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法還包括:
7、s21,在所述防腐層中,對(duì)所述第三方系統(tǒng)的接口進(jìn)行抽象封裝。
8、進(jìn)一步地,在所述s3之后,微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法還包括:
9、s4,在所述出口網(wǎng)關(guān)層中,統(tǒng)一記錄所有與第三方系統(tǒng)的接口調(diào)用日志,所述接口調(diào)用日志包括請(qǐng)求參數(shù)、響應(yīng)時(shí)間、返回值、錯(cuò)誤信息;
10、s5,當(dāng)出現(xiàn)故障時(shí),觸發(fā)熔斷機(jī)制,并根據(jù)記錄的所有與第三方系統(tǒng)的接口調(diào)用日志,進(jìn)行故障分析。
11、進(jìn)一步地,所述s5中的根據(jù)記錄的所有與第三方系統(tǒng)的接口調(diào)用日志,進(jìn)行故障分析具體包括:
12、s501:根據(jù)日志中記錄的錯(cuò)誤信息,初步判斷故障的類型;
13、s502:根據(jù)初步判斷的故障類型,確定具體分析方向,具體分析方向包括:接口性能問題、請(qǐng)求參數(shù)問題以及返回值問題;
14、s503:當(dāng)具體分析方向?yàn)榻涌谛阅軉栴}時(shí),通過分析每次調(diào)用的響應(yīng)時(shí)間,判斷接口的延遲和性能問題;
15、s504:當(dāng)具體分析方向?yàn)檎?qǐng)求參數(shù)問題時(shí),對(duì)比故障前后的請(qǐng)求參數(shù),確認(rèn)傳遞給第三方系統(tǒng)的參數(shù)是否正確;
16、s505:當(dāng)具體分析方向?yàn)榉祷刂祮栴}時(shí),通過分析返回值,確認(rèn)第三方系統(tǒng)返回的數(shù)據(jù)是否符合預(yù)期。
17、進(jìn)一步地,所述s5中的根據(jù)記錄的所有與第三方系統(tǒng)的接口調(diào)用日志,進(jìn)行故障分析具體包括:
18、從所述接口調(diào)用日志中獲取系統(tǒng)狀態(tài)數(shù)據(jù)序列,將所述系統(tǒng)狀態(tài)數(shù)據(jù)序列輸入至長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)中,進(jìn)行故障分析。
19、本發(fā)明的第二方面,提出了一種微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離系統(tǒng),包括:
20、構(gòu)建模塊,用于構(gòu)建系統(tǒng)分層架構(gòu),所述系統(tǒng)分層架構(gòu)包括業(yè)務(wù)層、防腐層、出口網(wǎng)關(guān)層以及第三方系統(tǒng);
21、第一搭建模塊,用于搭建所述防腐層,通過所述防腐層對(duì)所述業(yè)務(wù)層與所述第三方系統(tǒng)進(jìn)行隔離,以使所述業(yè)務(wù)層通過所述防腐層間接調(diào)用所述第三方系統(tǒng);
22、第二搭建模塊,用于搭建所述出口網(wǎng)關(guān)層,以使所述防腐層通過所述出口網(wǎng)關(guān)層統(tǒng)一調(diào)用所述第三方系統(tǒng)的接口。
23、進(jìn)一步地,微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離系統(tǒng),還包括:
24、封裝模塊,用于在所述防腐層中,對(duì)所述第三方系統(tǒng)的接口進(jìn)行抽象封裝。
25、進(jìn)一步地,微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離系統(tǒng),還包括:
26、記錄模塊,用于在所述出口網(wǎng)關(guān)層中,統(tǒng)一記錄所有與第三方系統(tǒng)的接口調(diào)用日志,所述接口調(diào)用日志包括請(qǐng)求參數(shù)、響應(yīng)時(shí)間、返回值、錯(cuò)誤信息;
27、分析模塊,用于當(dāng)出現(xiàn)故障時(shí),觸發(fā)熔斷機(jī)制,并根據(jù)記錄的所有與第三方系統(tǒng)的接口調(diào)用日志,進(jìn)行故障分析。
28、進(jìn)一步地,所述分析模塊具體用于:
29、根據(jù)日志中記錄的錯(cuò)誤信息,初步判斷故障的類型;
30、根據(jù)初步判斷的故障類型,確定具體分析方向,具體分析方向包括:接口性能問題、請(qǐng)求參數(shù)問題以及返回值問題;
31、當(dāng)具體分析方向?yàn)榻涌谛阅軉栴}時(shí),通過分析每次調(diào)用的響應(yīng)時(shí)間,判斷接口的延遲和性能問題;
32、當(dāng)具體分析方向?yàn)檎?qǐng)求參數(shù)問題時(shí),對(duì)比故障前后的請(qǐng)求參數(shù),確認(rèn)傳遞給第三方系統(tǒng)的參數(shù)是否正確;
33、當(dāng)具體分析方向?yàn)榉祷刂祮栴}時(shí),通過分析返回值,確認(rèn)第三方系統(tǒng)返回的數(shù)據(jù)是否符合預(yù)期。
34、進(jìn)一步地,所述分析模塊具體用于:
35、從所述接口調(diào)用日志中獲取系統(tǒng)狀態(tài)數(shù)據(jù)序列,將所述系統(tǒng)狀態(tài)數(shù)據(jù)序列輸入至長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)中,進(jìn)行故障分析。
36、本發(fā)明有益效果如下:
37、本發(fā)明所述的微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法,對(duì)業(yè)務(wù)系統(tǒng)與第三方系統(tǒng)進(jìn)行解耦,搭建防腐層,通過防腐層對(duì)業(yè)務(wù)層與第三方系統(tǒng)進(jìn)行隔離,以使業(yè)務(wù)層通過防腐層間接調(diào)用所述第三方系統(tǒng),降低業(yè)務(wù)系統(tǒng)對(duì)第三方系統(tǒng)依賴的緊密性,提升系統(tǒng)可靠性、可維護(hù)性、擴(kuò)展性和安全性。
1.一種微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法,其特征在于,在所述s2之后,還包括:
3.根據(jù)權(quán)利要求1所述的微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法,其特征在于,在所述s3之后,還包括:
4.根據(jù)權(quán)利要求3所述的微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法,其特征在于,所述s5中的根據(jù)記錄的所有與第三方系統(tǒng)的接口調(diào)用日志,進(jìn)行故障分析具體包括:
5.根據(jù)權(quán)利要求3所述的微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離方法,其特征在于,所述s5中的根據(jù)記錄的所有與第三方系統(tǒng)的接口調(diào)用日志,進(jìn)行故障分析具體包括:
6.一種微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離系統(tǒng),其特征在于,包括:
7.根據(jù)權(quán)利要求6所述的微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離系統(tǒng),其特征在于,還包括:
8.根據(jù)權(quán)利要求6所述的微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離系統(tǒng),其特征在于,還包括:
9.根據(jù)權(quán)利要求8所述的微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離系統(tǒng),其特征在于,所述分析模塊具體用于:
10.根據(jù)權(quán)利要求8所述的微服務(wù)架構(gòu)下外部系統(tǒng)接口防腐隔離系統(tǒng),其特征在于,所述分析模塊具體用于: