[發(fā)明專利]動(dòng)態(tài)網(wǎng)關(guān)路由配置方法、平臺(tái)、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)有效
| 申請(qǐng)?zhí)枺?/td> | 202011152701.9 | 申請(qǐng)日: | 2020-10-26 |
| 公開(公告)號(hào): | CN112260876B | 公開(公告)日: | 2022-08-16 |
| 發(fā)明(設(shè)計(jì))人: | 呂峰輝;劉晶 | 申請(qǐng)(專利權(quán))人: | 歐冶云商股份有限公司 |
| 主分類號(hào): | H04L41/0803 | 分類號(hào): | H04L41/0803;H04L41/082;H04L45/00 |
| 代理公司: | 上海科盛知識(shí)產(chǎn)權(quán)代理有限公司 31225 | 代理人: | 葉敏華 |
| 地址: | 201999 上海市寶山區(qū)漠*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 動(dòng)態(tài) 網(wǎng)關(guān) 路由 配置 方法 平臺(tái) 計(jì)算機(jī) 設(shè)備 存儲(chǔ) 介質(zhì) | ||
本發(fā)明涉及一種動(dòng)態(tài)網(wǎng)關(guān)路由配置方法、平臺(tái)、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì),當(dāng)網(wǎng)關(guān)應(yīng)用啟動(dòng)時(shí),從數(shù)據(jù)庫讀取網(wǎng)關(guān)配置信息,并將其加載到內(nèi)存中;監(jiān)聽rabbitmq集群的rabbitmq消息隊(duì)列,等待網(wǎng)關(guān)刷新消息;路由管理應(yīng)用端發(fā)送網(wǎng)關(guān)刷新信息至rabbitmq集群,rabbitmq集群接收后,根據(jù)網(wǎng)關(guān)刷新信息中需要刷新的路由對(duì)內(nèi)存中路由配置進(jìn)行更新;網(wǎng)關(guān)應(yīng)用集群定時(shí)從數(shù)據(jù)庫中獲取最新的網(wǎng)關(guān)路由配置信息。與現(xiàn)有技術(shù)相比,本發(fā)明具有提高網(wǎng)關(guān)路由性能、提高緩存利用率、可定時(shí)獲取最新路由等優(yōu)點(diǎn)。
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)關(guān)技術(shù)領(lǐng)域,尤其是涉及一種動(dòng)態(tài)網(wǎng)關(guān)路由配置方法、平臺(tái)、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù)
spring cloud gateway是spring開源的基于netty的高性能網(wǎng)關(guān)框架,提供功能強(qiáng)大的網(wǎng)關(guān)路由管理功能。spring cloud gateway的目標(biāo),不僅提供統(tǒng)一的路由方式,并且基于Filter鏈的方式提供了網(wǎng)關(guān)基本的功能,例如:安全,監(jiān)控/指標(biāo)和限流。在springcloud gateway使用中,路由配置是寫在配置文件中的,而gateway本身提供的動(dòng)態(tài)新增與刪除功能是將路由信息保存在內(nèi)存中,重啟網(wǎng)關(guān)服務(wù)后之前的變更失效。這就導(dǎo)致了一個(gè)問題:即每次路由配置文件的新增與更新需要?jiǎng)h除、修改或重啟網(wǎng)關(guān)服務(wù),影響服務(wù)的使用,該問題極大的限制了spring cloud gateway的使用場(chǎng)景。
發(fā)明內(nèi)容
本發(fā)明的目的就是為了克服上述現(xiàn)有技術(shù)存在的缺陷而提供一種動(dòng)態(tài)網(wǎng)關(guān)路由配置方法、平臺(tái)、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì),能夠解決網(wǎng)關(guān)路由更新必須要重啟應(yīng)用的問題,且保證了更新的實(shí)時(shí)性又增加了中間件服務(wù)故障、網(wǎng)絡(luò)通信異常時(shí)的容錯(cuò)率。
本發(fā)明的目的可以通過以下技術(shù)方案來實(shí)現(xiàn):
一種動(dòng)態(tài)網(wǎng)關(guān)路由配置方法,該方法基于spring cloud gateway架構(gòu)體系實(shí)現(xiàn),具體包括如下步驟:
配置信息加載步驟:
當(dāng)網(wǎng)關(guān)應(yīng)用啟動(dòng)時(shí),從數(shù)據(jù)庫讀取網(wǎng)關(guān)配置信息,并將其加載至內(nèi)存中;具體步驟包括:
1)網(wǎng)關(guān)應(yīng)用集群讀取數(shù)據(jù)庫中初始的路由配置信息;
2)網(wǎng)關(guān)應(yīng)用集群將步驟1)中的路由配置信息的數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換成spring cloudgateway網(wǎng)關(guān)路由配置對(duì)象數(shù)據(jù)結(jié)構(gòu);
3)調(diào)用spring cloud gateway提供的路由刷新方法生效路由配置。
進(jìn)一步地,配置信息加載步驟中,采用LRU緩存算法將數(shù)據(jù)庫讀取的網(wǎng)關(guān)配置信息放在內(nèi)存中進(jìn)行計(jì)算。
廣播同步更新步驟:
網(wǎng)關(guān)應(yīng)用集群通過mq客戶端創(chuàng)建FANOUT模式交換機(jī),每個(gè)網(wǎng)關(guān)集群應(yīng)用實(shí)例動(dòng)態(tài)創(chuàng)建一個(gè)隊(duì)列,并將其綁定到創(chuàng)建的FANOUT模式交換機(jī)上,利用rabbitmq的廣播交換機(jī)模式實(shí)現(xiàn)集群同時(shí)監(jiān)聽網(wǎng)關(guān)路由刷新消息,等待更新路由。所述rabbitmq集群接收網(wǎng)關(guān)刷新信息后,路由管理應(yīng)用端發(fā)送刷新網(wǎng)關(guān)消息至rabbitmq集群的FANOUT模式交換機(jī)上,rabbitmq集群廣播消息到每個(gè)網(wǎng)關(guān)應(yīng)用實(shí)例上,網(wǎng)關(guān)應(yīng)用收到網(wǎng)關(guān)刷新消息時(shí),根據(jù)接收的需要刷新的路由對(duì)內(nèi)存中路由配置進(jìn)行局部或全量更新。
定時(shí)主動(dòng)更新步驟:當(dāng)廣播同步更新步驟中出現(xiàn)廣播失敗時(shí),所述網(wǎng)關(guān)應(yīng)用集群定時(shí)從數(shù)據(jù)庫中更新最新的網(wǎng)關(guān)路由配置信息。
進(jìn)一步地,作為優(yōu)選條件,所述網(wǎng)關(guān)應(yīng)用集群每一個(gè)小時(shí)從數(shù)據(jù)庫中更新最新的網(wǎng)關(guān)路由配置信息。
配置信息讀取步驟:完成廣播同步更新步驟或定時(shí)主動(dòng)更新步驟后,所述路由管理應(yīng)用端根據(jù)實(shí)際應(yīng)用需求,從數(shù)據(jù)庫中讀取最新的網(wǎng)關(guān)路由配置信息。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于歐冶云商股份有限公司,未經(jīng)歐冶云商股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011152701.9/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 動(dòng)態(tài)矢量譯碼方法和動(dòng)態(tài)矢量譯碼裝置
- 動(dòng)態(tài)口令的顯示方法及動(dòng)態(tài)令牌
- 動(dòng)態(tài)庫管理方法和裝置
- 動(dòng)態(tài)令牌的身份認(rèn)證方法及裝置
- 令牌、動(dòng)態(tài)口令生成方法、動(dòng)態(tài)口令認(rèn)證方法及系統(tǒng)
- 一種動(dòng)態(tài)模糊控制系統(tǒng)
- 一種基于動(dòng)態(tài)信號(hào)的POS機(jī)和安全保護(hù)方法
- 圖像動(dòng)態(tài)展示的方法、裝置、系統(tǒng)及介質(zhì)
- 一種基于POS機(jī)聚合碼功能分離顯示動(dòng)態(tài)聚合碼的系統(tǒng)
- 基于動(dòng)態(tài)口令的身份認(rèn)證方法、裝置和動(dòng)態(tài)令牌
- 基于MEGACO協(xié)議的信令代理實(shí)現(xiàn)方法
- 一種基站系統(tǒng)中的網(wǎng)關(guān)選擇方法及裝置
- 數(shù)據(jù)網(wǎng)關(guān)負(fù)載處理方法、設(shè)備及系統(tǒng)
- 網(wǎng)關(guān)、網(wǎng)關(guān)熱備份系統(tǒng)及方法
- 一種網(wǎng)關(guān)代理設(shè)置及控制方法
- 基于能力特征的網(wǎng)關(guān)管控方法及裝置
- 一種環(huán)網(wǎng)自愈的方法和裝置
- Lora網(wǎng)關(guān)控制方法及Lora通信系統(tǒng)
- 流量調(diào)度方法及裝置
- 網(wǎng)關(guān)數(shù)據(jù)的遷移方法、裝置、智能網(wǎng)關(guān)設(shè)備及存儲(chǔ)介質(zhì)





