System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實現(xiàn)步驟摘要】
本申請屬于計算機(jī),具體涉及一種api請求的路由轉(zhuǎn)發(fā)方法和系統(tǒng)。
技術(shù)介紹
1、互聯(lián)網(wǎng)構(gòu)建于http協(xié)議之上,在微服務(wù)技術(shù)棧成為技術(shù)底座以后,api網(wǎng)關(guān)(application?programming?interface?gateway)中間件應(yīng)運(yùn)而生。作為微服務(wù)
的必備基礎(chǔ)組件,api網(wǎng)關(guān)處于client端與各個微服務(wù)之間,主要擔(dān)任反向代理的角色,將不同的api請求路由到相對應(yīng)的微服務(wù)中去,同時,它還具備安全,限流,緩存,日志,監(jiān)控,重試,熔斷等功能。
2、傳統(tǒng)上,api網(wǎng)關(guān)在應(yīng)用架構(gòu)上屬于一個中央集中式基礎(chǔ)微服務(wù)架構(gòu)組件,可以將來自外網(wǎng)南北向的api請求路由到內(nèi)部的上游微服務(wù),也可以承載內(nèi)網(wǎng)東西向api請求的路由分發(fā)工作,將內(nèi)部一個業(yè)務(wù)領(lǐng)域的微服務(wù)發(fā)起的api請求路由到內(nèi)部另外一個業(yè)務(wù)領(lǐng)域微服務(wù)上,東西向api請求流量往往大于南北向api請求流量。
3、現(xiàn)有技術(shù)中,api網(wǎng)關(guān)一般進(jìn)行集群化水平多實例部署,形成api網(wǎng)關(guān)集群。龐大的東西向api請求都經(jīng)由一個api網(wǎng)關(guān)集群進(jìn)行路由轉(zhuǎn)發(fā),往往會存在系統(tǒng)穩(wěn)定性風(fēng)險。
4、申請內(nèi)容
5、本申請實施例的目的是提供一種api請求的路由轉(zhuǎn)發(fā)方法和系統(tǒng),以解決現(xiàn)有技術(shù)中存在的系統(tǒng)穩(wěn)定性風(fēng)險。
6、為了解決上述技術(shù)問題,本申請是這樣實現(xiàn)的:
7、第一方面,提供了一種api請求的路由轉(zhuǎn)發(fā)方法,包括以下步驟:
8、通過接收端網(wǎng)關(guān)實例接收api請求,通過查找全局路由信息表,獲取與所述api請求對應(yīng)的目的端網(wǎng)關(guān)集群
9、在所述目的端網(wǎng)關(guān)集群等于與所述接收端網(wǎng)關(guān)實例對應(yīng)的網(wǎng)關(guān)集群的情況下,通過所述接收端網(wǎng)關(guān)實例將所述api請求轉(zhuǎn)發(fā)至與所述api請求對應(yīng)的微服務(wù);
10、在所述目的端網(wǎng)關(guān)集群不等于與所述接收端網(wǎng)關(guān)實例對應(yīng)的網(wǎng)關(guān)集群的情況下,通過所述接收端網(wǎng)關(guān)實例將所述api請求轉(zhuǎn)發(fā)至所述目的端網(wǎng)關(guān)集群,并通過所述目的端網(wǎng)關(guān)集群將所述api請求轉(zhuǎn)發(fā)至與所述api請求對應(yīng)的微服務(wù)。
11、第二方面,提供了一種api請求的路由轉(zhuǎn)發(fā)系統(tǒng),包括:
12、查找模塊,用于通過接收端網(wǎng)關(guān)實例接收api請求,通過查找全局路由信息表,獲取與所述api請求對應(yīng)的目的端網(wǎng)關(guān)集群;
13、第一轉(zhuǎn)發(fā)模塊,用于在所述目的端網(wǎng)關(guān)集群等于與所述接收端網(wǎng)關(guān)實例對應(yīng)的網(wǎng)關(guān)集群的情況下,通過所述接收端網(wǎng)關(guān)實例將所述api請求轉(zhuǎn)發(fā)至與所述api請求對應(yīng)的微服務(wù);
14、第二轉(zhuǎn)發(fā)模塊,用于在所述目的端網(wǎng)關(guān)集群不等于與所述接收端網(wǎng)關(guān)實例對應(yīng)的網(wǎng)關(guān)集群的情況下,通過所述接收端網(wǎng)關(guān)實例將所述api請求轉(zhuǎn)發(fā)至所述目的端網(wǎng)關(guān)集群,并通過所述目的端網(wǎng)關(guān)集群將所述api請求轉(zhuǎn)發(fā)至與所述api請求對應(yīng)的微服務(wù)。
15、本申請實施例通過在api?gateway集群中共享api全局路由表,能夠?qū)pi請求精準(zhǔn)地直接轉(zhuǎn)發(fā)到目標(biāo)微服務(wù)或者經(jīng)過一跳間接經(jīng)過同層其它api?gateway集群精準(zhǔn)地轉(zhuǎn)發(fā)到目標(biāo)微服務(wù),從而完成api路由轉(zhuǎn)發(fā)任務(wù),實現(xiàn)同層對等api?gateway集群組網(wǎng)的目的,基于單元化部署和協(xié)作轉(zhuǎn)發(fā)能力,增強(qiáng)了網(wǎng)關(guān)系統(tǒng)穩(wěn)定性,既能實現(xiàn)業(yè)務(wù)網(wǎng)絡(luò)拓補(bǔ)的隔離性,又具有較好的可維護(hù)性。
技術(shù)實現(xiàn)思路
本文檔來自技高網(wǎng)...【技術(shù)保護(hù)點】
1.一種API請求的路由轉(zhuǎn)發(fā)方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述通過查找全局路由信息表,獲取與所述API請求對應(yīng)的目的端網(wǎng)關(guān)集群之前,還包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述全局路由信息表包括API與微服務(wù)之間的映射關(guān)系、微服務(wù)與注冊中心之間的映射關(guān)系,以及注冊中心與API網(wǎng)關(guān)集群之間的映射關(guān)系;
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述在所述全局路由信息表中查找與所述注冊中心對應(yīng)的目的端網(wǎng)關(guān)集群,具體包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,每個部署區(qū)域內(nèi)部署有多個注冊中心,每個微服務(wù)有多個副本注冊到多個注冊中心,不同的注冊中心對應(yīng)不同的API網(wǎng)關(guān)集群,且每個API網(wǎng)關(guān)集群具有跟所對應(yīng)注冊中心一樣的部署區(qū)域?qū)傩孕畔ⅲ?/p>
6.一種API請求的路由轉(zhuǎn)發(fā)系統(tǒng),其特征在于,包括:
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,還包括:
8.根據(jù)權(quán)利要求6所述的系統(tǒng),其特征在于,所述全局路由信息表包括API與微服務(wù)之間的映射關(guān)系、微服務(wù)與
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其特征在于,
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,每個部署區(qū)域內(nèi)部署有多個注冊中心,每個微服務(wù)有多個副本注冊到多個注冊中心,不同的注冊中心對應(yīng)不同的API網(wǎng)關(guān)集群,且每個API網(wǎng)關(guān)集群具有跟所對應(yīng)注冊中心一樣的部署區(qū)域?qū)傩孕畔ⅲ?/p>...
【技術(shù)特征摘要】
1.一種api請求的路由轉(zhuǎn)發(fā)方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述通過查找全局路由信息表,獲取與所述api請求對應(yīng)的目的端網(wǎng)關(guān)集群之前,還包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述全局路由信息表包括api與微服務(wù)之間的映射關(guān)系、微服務(wù)與注冊中心之間的映射關(guān)系,以及注冊中心與api網(wǎng)關(guān)集群之間的映射關(guān)系;
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述在所述全局路由信息表中查找與所述注冊中心對應(yīng)的目的端網(wǎng)關(guān)集群,具體包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,每個部署區(qū)域內(nèi)部署有多個注冊中心,每個微服務(wù)有多個副本注冊到多個注冊中心,不同的注冊中心對應(yīng)不同的api網(wǎng)關(guān)...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:周國庫,劉從從,
申請(專利權(quán))人:百望股份有限公司,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。