亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種業(yè)務(wù)請(qǐng)求處理方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)與流程

文檔序號(hào):40320664發(fā)布日期:2024-12-18 12:57閱讀:9來(lái)源:國(guó)知局
一種業(yè)務(wù)請(qǐng)求處理方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)與流程

本發(fā)明涉及請(qǐng)求處理領(lǐng)域,特別涉及一種業(yè)務(wù)請(qǐng)求處理方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)。


背景技術(shù):

1、微服務(wù)(或稱(chēng)微服務(wù)架構(gòu))是一種云原生架構(gòu)方法,在單個(gè)應(yīng)用中包含眾多松散耦合且可單獨(dú)部署的小型組件或服務(wù),與大型、緊密耦合的應(yīng)用程序的整體方法相反。微服務(wù)通常擁有自己的技術(shù)棧,包括數(shù)據(jù)庫(kù)和數(shù)據(jù)管理模型。目前,客戶(hù)端在訪(fǎng)問(wèn)微服務(wù)時(shí),向網(wǎng)關(guān)發(fā)出請(qǐng)求,然后在gateway?handler?mapping(網(wǎng)關(guān)處理程序映射)中找到與請(qǐng)求相匹配的路由,將其發(fā)送到gateway?web?handler(網(wǎng)關(guān)web處理器),然后再通過(guò)指定的過(guò)濾器鏈來(lái)將請(qǐng)求發(fā)送到目標(biāo)微服務(wù),最后返回目標(biāo)微服務(wù)的處理結(jié)果。其中路由轉(zhuǎn)發(fā)通常由nginx(engine?x,一個(gè)高性能的http(hypertext?transfer?protocol,超文本傳輸協(xié)議)和反向代理web服務(wù)器)進(jìn)行反向代理,日志記錄等。每個(gè)服務(wù)需要對(duì)客戶(hù)端獨(dú)立進(jìn)行認(rèn)證授權(quán),訪(fǎng)問(wèn)效率較低。因此,如何對(duì)訪(fǎng)問(wèn)微服務(wù)的客戶(hù)端進(jìn)行綜合認(rèn)證授權(quán),避免該客戶(hù)端通過(guò)同一個(gè)網(wǎng)關(guān)訪(fǎng)問(wèn)不同的微服務(wù)時(shí)多次進(jìn)行身份認(rèn)證是目前亟待解決的問(wèn)題。


技術(shù)實(shí)現(xiàn)思路

1、有鑒于此,本發(fā)明的目的在于提供一種業(yè)務(wù)請(qǐng)求處理方法、裝置、設(shè)備及存儲(chǔ)介質(zhì),能夠避免客戶(hù)端通過(guò)同一個(gè)網(wǎng)關(guān)訪(fǎng)問(wèn)不同的微服務(wù)時(shí)多次進(jìn)行身份認(rèn)證。其具體方案如下:

2、第一方面,本技術(shù)公開(kāi)了一種業(yè)務(wù)請(qǐng)求處理方法,應(yīng)用于網(wǎng)關(guān),包括:

3、獲取客戶(hù)端發(fā)送的令牌獲取請(qǐng)求,將所述令牌獲取請(qǐng)求轉(zhuǎn)發(fā)至授權(quán)服務(wù),以便所述授權(quán)服務(wù)基于所述令牌獲取請(qǐng)求中的客戶(hù)端身份信息對(duì)所述客戶(hù)端進(jìn)行身份驗(yàn)證,并在身份驗(yàn)證成功后基于預(yù)設(shè)令牌桶算法向所述客戶(hù)端轉(zhuǎn)發(fā)相應(yīng)的令牌;

4、獲取客戶(hù)端基于所述令牌發(fā)送的業(yè)務(wù)請(qǐng)求,將所述業(yè)務(wù)請(qǐng)求與網(wǎng)關(guān)內(nèi)置的斷言進(jìn)行匹配,根據(jù)相應(yīng)的匹配結(jié)果確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的目標(biāo)微服務(wù),并判斷所述令牌是否滿(mǎn)足所述目標(biāo)微服務(wù)的預(yù)設(shè)訪(fǎng)問(wèn)條件;

5、若所述令牌滿(mǎn)足所述目標(biāo)微服務(wù)的預(yù)設(shè)訪(fǎng)問(wèn)條件,則基于目標(biāo)服務(wù)注冊(cè)中心將所述業(yè)務(wù)請(qǐng)求路由至所述目標(biāo)微服務(wù),以便所述目標(biāo)微服務(wù)獲取并處理所述業(yè)務(wù)請(qǐng)求,并將相應(yīng)的處理結(jié)果返回至所述網(wǎng)關(guān);

6、將所述處理結(jié)果轉(zhuǎn)發(fā)至所述客戶(hù)端,并利用所述網(wǎng)關(guān)對(duì)應(yīng)的過(guò)濾器對(duì)所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的處理邏輯進(jìn)行記錄,以完成所述業(yè)務(wù)請(qǐng)求的處理。

7、可選的,所述獲取客戶(hù)端發(fā)送的令牌獲取請(qǐng)求之前,還包括:

8、將所述網(wǎng)關(guān)以及全部微服務(wù)注冊(cè)至所述目標(biāo)服務(wù)注冊(cè)中心,通過(guò)所述目標(biāo)服務(wù)注冊(cè)中心對(duì)所述網(wǎng)關(guān)以及全部微服務(wù)進(jìn)行統(tǒng)一管理,以便基于所述目標(biāo)服務(wù)注冊(cè)中心確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的所述目標(biāo)微服務(wù)的路徑地址,并通過(guò)所述路徑地址對(duì)所述業(yè)務(wù)請(qǐng)求進(jìn)行路由。

9、可選的,所述將所述令牌獲取請(qǐng)求轉(zhuǎn)發(fā)至授權(quán)服務(wù),以便所述授權(quán)服務(wù)基于所述令牌獲取請(qǐng)求中的客戶(hù)端身份信息對(duì)所述客戶(hù)端進(jìn)行身份驗(yàn)證,并在身份驗(yàn)證成功后基于預(yù)設(shè)令牌桶算法向所述客戶(hù)端轉(zhuǎn)發(fā)相應(yīng)的令牌,包括:

10、將所述令牌獲取請(qǐng)求轉(zhuǎn)發(fā)至授權(quán)服務(wù);

11、通過(guò)所述授權(quán)服務(wù)基于所述令牌獲取請(qǐng)求中的所述客戶(hù)端的用戶(hù)名和密碼對(duì)所述客戶(hù)端進(jìn)行身份驗(yàn)證,若所述客戶(hù)端身份驗(yàn)證成功,則生成相應(yīng)的令牌,將所述令牌以及所述令牌對(duì)應(yīng)的時(shí)效信息保存至redis數(shù)據(jù)庫(kù),并基于所述預(yù)設(shè)令牌桶算法通過(guò)所述網(wǎng)關(guān)將所述令牌轉(zhuǎn)發(fā)至所述客戶(hù)端。

12、可選的,所述判斷所述令牌是否滿(mǎn)足所述目標(biāo)微服務(wù)的預(yù)設(shè)訪(fǎng)問(wèn)條件,包括:

13、基于所述redis數(shù)據(jù)庫(kù)中所述令牌對(duì)應(yīng)的時(shí)效信息判斷所述令牌的簽名和使用期限是否有效;

14、若所述令牌的簽名和使用期限有效,則判斷所述令牌的訪(fǎng)問(wèn)權(quán)限與所述目標(biāo)微服務(wù)對(duì)應(yīng)的訪(fǎng)問(wèn)權(quán)限是否有交集。

15、可選的,所述判斷所述令牌的訪(fǎng)問(wèn)權(quán)限與所述目標(biāo)微服務(wù)對(duì)應(yīng)的訪(fǎng)問(wèn)權(quán)限是否有交集之后,還包括:

16、若所述令牌的訪(fǎng)問(wèn)權(quán)限與所述目標(biāo)微服務(wù)對(duì)應(yīng)的訪(fǎng)問(wèn)權(quán)限有交集,則判定所述令牌滿(mǎn)足所述目標(biāo)微服務(wù)的預(yù)設(shè)訪(fǎng)問(wèn)條件;

17、若所述令牌的訪(fǎng)問(wèn)權(quán)限與所述目標(biāo)微服務(wù)對(duì)應(yīng)的訪(fǎng)問(wèn)權(quán)限沒(méi)有交集,則判定所述令牌不滿(mǎn)足所述目標(biāo)微服務(wù)的預(yù)設(shè)訪(fǎng)問(wèn)條件,并發(fā)送沒(méi)有權(quán)限的提示信息。

18、可選的,所述業(yè)務(wù)請(qǐng)求處理方法,還包括:

19、若所述網(wǎng)關(guān)自身存在異?;蛟跇I(yè)務(wù)請(qǐng)求處理過(guò)程中存在異常,則通過(guò)所述網(wǎng)關(guān)的errorwebexceptionhandler類(lèi)繼承并重寫(xiě)目標(biāo)方法,并通過(guò)所述目標(biāo)方法對(duì)所述異常進(jìn)行處理以及對(duì)返回至所述客戶(hù)端的狀態(tài)碼和數(shù)據(jù)結(jié)構(gòu)進(jìn)行自定義。

20、可選的,所述利用所述網(wǎng)關(guān)對(duì)應(yīng)的過(guò)濾器對(duì)所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的處理邏輯進(jìn)行記錄,包括:

21、利用所述網(wǎng)關(guān)對(duì)應(yīng)的第一類(lèi)型過(guò)濾器對(duì)所述業(yè)務(wù)請(qǐng)求的請(qǐng)求參數(shù)、請(qǐng)求頭和統(tǒng)一資源標(biāo)識(shí)符進(jìn)行記錄;

22、利用所述網(wǎng)關(guān)對(duì)應(yīng)的第二類(lèi)型過(guò)濾器對(duì)所述業(yè)務(wù)請(qǐng)求的請(qǐng)求狀態(tài)、響應(yīng)時(shí)間和所述處理結(jié)果進(jìn)行記錄。

23、第二方面,本技術(shù)公開(kāi)了一種業(yè)務(wù)請(qǐng)求處理裝置,應(yīng)用于網(wǎng)關(guān),包括:

24、令牌轉(zhuǎn)發(fā)模塊,用于獲取客戶(hù)端發(fā)送的令牌獲取請(qǐng)求,將所述令牌獲取請(qǐng)求轉(zhuǎn)發(fā)至授權(quán)服務(wù),以便所述授權(quán)服務(wù)基于所述令牌獲取請(qǐng)求中的客戶(hù)端身份信息對(duì)所述客戶(hù)端進(jìn)行身份驗(yàn)證,并在身份驗(yàn)證成功后基于預(yù)設(shè)令牌桶算法向所述客戶(hù)端轉(zhuǎn)發(fā)相應(yīng)的令牌;

25、條件判斷模塊,用于獲取客戶(hù)端基于所述令牌發(fā)送的業(yè)務(wù)請(qǐng)求,將所述業(yè)務(wù)請(qǐng)求與網(wǎng)關(guān)內(nèi)置的斷言進(jìn)行匹配,根據(jù)相應(yīng)的匹配結(jié)果確定所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的目標(biāo)微服務(wù),并判斷所述令牌是否滿(mǎn)足所述目標(biāo)微服務(wù)的預(yù)設(shè)訪(fǎng)問(wèn)條件;

26、處理結(jié)果獲取模塊,用于若所述令牌滿(mǎn)足所述目標(biāo)微服務(wù)的預(yù)設(shè)訪(fǎng)問(wèn)條件,則基于目標(biāo)服務(wù)注冊(cè)中心將所述業(yè)務(wù)請(qǐng)求路由至所述目標(biāo)微服務(wù),以便所述目標(biāo)微服務(wù)獲取并處理所述業(yè)務(wù)請(qǐng)求,并將相應(yīng)的處理結(jié)果返回至所述網(wǎng)關(guān);

27、處理邏輯記錄模塊,用于將所述處理結(jié)果轉(zhuǎn)發(fā)至所述客戶(hù)端,并利用所述網(wǎng)關(guān)對(duì)應(yīng)的過(guò)濾器對(duì)所述業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的處理邏輯進(jìn)行記錄,以完成所述業(yè)務(wù)請(qǐng)求的處理。

28、第三方面,本技術(shù)公開(kāi)了一種電子設(shè)備,包括:

29、存儲(chǔ)器,用于保存計(jì)算機(jī)程序;

30、處理器,用于執(zhí)行所述計(jì)算機(jī)程序,以實(shí)現(xiàn)前述的業(yè)務(wù)請(qǐng)求處理方法。

31、第四方面,本技術(shù)公開(kāi)了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),用于存儲(chǔ)計(jì)算機(jī)程序;其中,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)前述的業(yè)務(wù)請(qǐng)求處理方法。

32、本技術(shù)中在處理客戶(hù)的業(yè)務(wù)請(qǐng)求時(shí),網(wǎng)關(guān)首先獲取客戶(hù)端發(fā)送的令牌獲取請(qǐng)求,將令牌獲取請(qǐng)求轉(zhuǎn)發(fā)至授權(quán)服務(wù),以便授權(quán)服務(wù)基于令牌獲取請(qǐng)求中的客戶(hù)端身份信息對(duì)客戶(hù)端進(jìn)行身份驗(yàn)證,并在身份驗(yàn)證成功后基于預(yù)設(shè)令牌桶算法向客戶(hù)端轉(zhuǎn)發(fā)相應(yīng)的令牌;然后獲取客戶(hù)端基于令牌發(fā)送的業(yè)務(wù)請(qǐng)求,將業(yè)務(wù)請(qǐng)求與網(wǎng)關(guān)內(nèi)置的斷言進(jìn)行匹配,根據(jù)相應(yīng)的匹配結(jié)果確定業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的目標(biāo)微服務(wù),并判斷令牌是否滿(mǎn)足目標(biāo)微服務(wù)的預(yù)設(shè)訪(fǎng)問(wèn)條件;若令牌滿(mǎn)足目標(biāo)微服務(wù)的預(yù)設(shè)訪(fǎng)問(wèn)條件,則利用目標(biāo)微服務(wù)以及目標(biāo)服務(wù)注冊(cè)中心對(duì)業(yè)務(wù)請(qǐng)求進(jìn)行路由,以便目標(biāo)微服務(wù)獲取并處理業(yè)務(wù)請(qǐng)求,并將相應(yīng)的處理結(jié)果返回至網(wǎng)關(guān);最后將處理結(jié)果轉(zhuǎn)發(fā)至客戶(hù)端,并利用網(wǎng)關(guān)對(duì)應(yīng)的過(guò)濾器對(duì)業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的處理邏輯進(jìn)行記錄,以完成業(yè)務(wù)請(qǐng)求的處理??梢?jiàn),本技術(shù)中網(wǎng)關(guān)首先獲取客戶(hù)端的令牌獲取請(qǐng)求,并將其轉(zhuǎn)發(fā)至授權(quán)服務(wù),以便授權(quán)服務(wù)基于令牌獲取請(qǐng)求中的客戶(hù)端身份信息對(duì)客戶(hù)端進(jìn)行身份驗(yàn)證,授權(quán)服務(wù)在客戶(hù)端身份認(rèn)證通過(guò)后基于預(yù)設(shè)令牌桶算法為該客戶(hù)端發(fā)送相應(yīng)的令牌,從而實(shí)現(xiàn)了對(duì)服務(wù)的流量控制,當(dāng)該客戶(hù)端需要訪(fǎng)問(wèn)微服務(wù)時(shí),向網(wǎng)關(guān)發(fā)送包含該令牌的業(yè)務(wù)請(qǐng)求,網(wǎng)關(guān)基于業(yè)務(wù)請(qǐng)求與網(wǎng)關(guān)內(nèi)置的斷言進(jìn)行匹配,根據(jù)相應(yīng)的匹配結(jié)果確定業(yè)務(wù)請(qǐng)求對(duì)應(yīng)的目標(biāo)微服務(wù),然后對(duì)業(yè)務(wù)請(qǐng)求對(duì)令牌進(jìn)行核驗(yàn),若該令牌滿(mǎn)足目標(biāo)微服務(wù)的預(yù)設(shè)訪(fǎng)問(wèn)條件,該客戶(hù)端便可憑借該令牌實(shí)現(xiàn)對(duì)目標(biāo)微服務(wù)的訪(fǎng)問(wèn),從而使客戶(hù)端只需要訪(fǎng)問(wèn)網(wǎng)關(guān),無(wú)需關(guān)注服務(wù)如何實(shí)現(xiàn),避免了客戶(hù)端通過(guò)同一個(gè)網(wǎng)關(guān)訪(fǎng)問(wèn)不同的微服務(wù)時(shí)多次進(jìn)行身份認(rèn)證。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1