[發(fā)明專利]一種基于OpenResty的灰度發(fā)布方法及相關(guān)設(shè)備有效
| 申請(qǐng)?zhí)枺?/td> | 202011487999.9 | 申請(qǐng)日: | 2020-12-16 |
| 公開(公告)號(hào): | CN112653579B | 公開(公告)日: | 2023-05-23 |
| 發(fā)明(設(shè)計(jì))人: | 李泓曄;陳學(xué)亮;趙波;陳貴川;王妍;熊振;辛國睿;夏冰;隗功暉;蔣文慧 | 申請(qǐng)(專利權(quán))人: | 中國人壽保險(xiǎn)股份有限公司 |
| 主分類號(hào): | H04L41/0813 | 分類號(hào): | H04L41/0813;H04L41/082;H04L67/1004;H04L67/1017;H04L12/66 |
| 代理公司: | 北京風(fēng)雅頌專利代理有限公司 11403 | 代理人: | 李莎 |
| 地址: | 100033 *** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 openresty 灰度 發(fā)布 方法 相關(guān) 設(shè)備 | ||
本說明書一個(gè)或多個(gè)實(shí)施例提供一種基于OpenResty的灰度發(fā)布方法及相關(guān)設(shè)備;所述方法包括:預(yù)先加載配置更新微服務(wù)中的配置項(xiàng);接收客戶端發(fā)出的原始訪問請(qǐng)求;利用配置項(xiàng)對(duì)原始訪問請(qǐng)求進(jìn)行處理,得到轉(zhuǎn)發(fā)地址和最終統(tǒng)一資源標(biāo)識(shí)符;當(dāng)轉(zhuǎn)發(fā)地址為默認(rèn)環(huán)境轉(zhuǎn)發(fā)地址時(shí),將攜帶有請(qǐng)求頭和最終統(tǒng)一資源標(biāo)識(shí)符的最終訪問請(qǐng)求轉(zhuǎn)發(fā)給線上服務(wù)器,當(dāng)轉(zhuǎn)發(fā)地址為灰度環(huán)境轉(zhuǎn)發(fā)地址時(shí),將最終訪問請(qǐng)求轉(zhuǎn)發(fā)給灰度服務(wù)器。本方法通過OpenResty網(wǎng)關(guān)對(duì)客戶端的訪問請(qǐng)求進(jìn)行處理,將訪問請(qǐng)求按照轉(zhuǎn)發(fā)地址轉(zhuǎn)發(fā)給對(duì)應(yīng)的線上服務(wù)器或灰度服務(wù)器,保證了線上環(huán)境與灰度環(huán)境的隔離性,實(shí)現(xiàn)了灰度環(huán)境的動(dòng)態(tài)擴(kuò)展熱加載能力,擴(kuò)展了灰度發(fā)布策略的個(gè)性化定制能力。
技術(shù)領(lǐng)域
本說明書一個(gè)或多個(gè)實(shí)施例涉及灰度發(fā)布技術(shù)領(lǐng)域,尤其涉及一種基于OpenResty的灰度發(fā)布方法及相關(guān)設(shè)備。
背景技術(shù)
目前客戶端對(duì)應(yīng)后臺(tái)使用基于Spring、Tomcat和Docker的微服務(wù)架構(gòu)方案,可以實(shí)現(xiàn)微服務(wù)線上的用戶無感知升級(jí),但升級(jí)后仍需花費(fèi)相當(dāng)多的人力及時(shí)間做對(duì)應(yīng)的驗(yàn)證,如果升級(jí)存在問題,需要進(jìn)行版本的回退,在驗(yàn)證期間影響線上相關(guān)功能的正常使用,因此目前線上環(huán)境的升級(jí)部署仍選擇在客戶端使用量較少的凌晨時(shí)間段進(jìn)行,嚴(yán)重影響了相關(guān)運(yùn)維人員及開發(fā)人員的作息,增加了工作量。同時(shí),有部分業(yè)務(wù)功能需要在線上環(huán)境做一段時(shí)間的小部分用戶的灰度驗(yàn)證,無問題后再將該功能提供給全體用戶。由此可見,灰度發(fā)布這一技術(shù)尤為重要。
灰度發(fā)布又名金絲雀發(fā)布,是指在黑與白之間,能夠平滑過渡的一種發(fā)布方式。在灰度發(fā)布策略下,線上可以同時(shí)運(yùn)行兩套甚至多套環(huán)境,且線上環(huán)境和灰度環(huán)境為相互分隔狀態(tài),僅有灰度客戶端可以訪問到后臺(tái)灰度環(huán)境,線上客戶端仍訪問后臺(tái)線上環(huán)境。在此機(jī)制下,可在正常工作時(shí)間升級(jí)后臺(tái)灰度環(huán)境,測試人員使用預(yù)先下發(fā)的灰度客戶端進(jìn)行驗(yàn)證,驗(yàn)證無問題后將線上環(huán)境切換為驗(yàn)證后的灰度環(huán)境,即可實(shí)現(xiàn)用戶無感知的平滑切換。
現(xiàn)有的灰度發(fā)布技術(shù),一般是使用Nginx的負(fù)載均衡策略,包括“輪詢”、“固定權(quán)重”、“fair”和“根據(jù)IP或URL進(jìn)行一致性哈希”。輪詢?yōu)槊總€(gè)請(qǐng)求按時(shí)間順序逐一分配到不同的后端服務(wù)器,如果后端服務(wù)器掉線,能自動(dòng)剔除。固定權(quán)重為指定輪詢幾率,權(quán)重值和訪問比率成正比,用于后端服務(wù)器性能不均的情況。fair為按后端服務(wù)器的響應(yīng)時(shí)間來分配請(qǐng)求,響應(yīng)時(shí)間短的優(yōu)先分配。根據(jù)IP或URL進(jìn)行一致性哈希是按訪問URL的哈希結(jié)果來分配請(qǐng)求,使每個(gè)URL定向到同一個(gè)后端服務(wù)器。
但是,除了“根據(jù)IP或URL進(jìn)行一致性哈希”這一方法外,其他現(xiàn)有技術(shù)無法保證線上環(huán)境與灰度環(huán)境的隔離性;同時(shí),現(xiàn)有技術(shù)需將所有的環(huán)境相關(guān)配置在配置文件中進(jìn)行維護(hù),無法實(shí)現(xiàn)灰度環(huán)境的動(dòng)態(tài)擴(kuò)展,即灰度環(huán)境配置文件無法實(shí)現(xiàn)熱加載;此外,現(xiàn)有技術(shù)無法定制個(gè)性化灰度發(fā)布策略,即無法根據(jù)請(qǐng)求頭或請(qǐng)求體的內(nèi)容進(jìn)行計(jì)算并確定最終要轉(zhuǎn)發(fā)到哪個(gè)后臺(tái)環(huán)境中。
發(fā)明內(nèi)容
有鑒于此,本說明書一個(gè)或多個(gè)實(shí)施例的目的在于提出一種基于OpenResty的灰度發(fā)布方法及相關(guān)設(shè)備,以解決線上與灰度環(huán)境不能有效隔離、灰度環(huán)境配置文件不能熱加載、灰度發(fā)布策略不能自定義的問題。
基于上述目的,本說明書一個(gè)或多個(gè)實(shí)施例提供了一種基于OpenResty的灰度發(fā)布方法,包括:
預(yù)先加載配置更新微服務(wù)中的配置項(xiàng);
接收客戶端發(fā)出的原始訪問請(qǐng)求;所述原始訪問請(qǐng)求包括原始統(tǒng)一資源標(biāo)識(shí)符和請(qǐng)求頭;
利用所述配置項(xiàng)對(duì)所述原始訪問請(qǐng)求進(jìn)行處理,得到轉(zhuǎn)發(fā)地址和最終統(tǒng)一資源標(biāo)識(shí)符;所述轉(zhuǎn)發(fā)地址包括默認(rèn)環(huán)境轉(zhuǎn)發(fā)地址和灰度環(huán)境轉(zhuǎn)發(fā)地址;
當(dāng)所述轉(zhuǎn)發(fā)地址為所述默認(rèn)環(huán)境轉(zhuǎn)發(fā)地址時(shí),將攜帶有所述請(qǐng)求頭和所述最終統(tǒng)一資源標(biāo)識(shí)符的最終訪問請(qǐng)求轉(zhuǎn)發(fā)給線上服務(wù)器,當(dāng)所述轉(zhuǎn)發(fā)地址為所述灰度環(huán)境轉(zhuǎn)發(fā)地址時(shí),將所述最終訪問請(qǐng)求轉(zhuǎn)發(fā)給灰度服務(wù)器。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國人壽保險(xiǎn)股份有限公司,未經(jīng)中國人壽保險(xiǎn)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011487999.9/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 一種基于OpenResty的高性能MVC框架
- 一種基于openresty的lua模塊化開發(fā)方法及開發(fā)框架
- 基于Consul實(shí)現(xiàn)OpenResty動(dòng)態(tài)負(fù)載均衡的方法
- 基于多Agent集群OpenResty網(wǎng)關(guān)特征防刷方法
- 一種RADOS Gateway的多媒體處理方法
- 安全防護(hù)方法、WAF系統(tǒng)、電子設(shè)備及存儲(chǔ)介質(zhì)
- 一種ABtest實(shí)驗(yàn)方法、裝置、智能終端及存儲(chǔ)介質(zhì)
- 一種SSO登錄的方法及系統(tǒng)
- 一種基于OpenResty實(shí)現(xiàn)的緩存方法
- 發(fā)布微服務(wù)應(yīng)用的方法、系統(tǒng)、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 處理要顯示在液晶顯示裝置上的運(yùn)動(dòng)圖像的設(shè)備及方法
- 灰度修正裝置、灰度修正方法、灰度修正程序
- 顯示裝置
- 醫(yī)學(xué)圖像的灰度映射曲線生成方法及裝置
- 基于伽馬校正的灰度化處理系統(tǒng)
- 一種灰度發(fā)布方法、系統(tǒng)及電子設(shè)備和存儲(chǔ)介質(zhì)
- 物體運(yùn)動(dòng)軌跡的生成方法及生成系統(tǒng)
- 一種灰度顯示驅(qū)動(dòng)方法
- 一種基于灰度驗(yàn)證的業(yè)務(wù)處理方法、裝置及設(shè)備
- 圖像增強(qiáng)方法、裝置、計(jì)算機(jī)設(shè)備及存儲(chǔ)介質(zhì)
- 將發(fā)布數(shù)據(jù)發(fā)布至不同發(fā)布主機(jī)的系統(tǒng)及其方法
- 一種技術(shù)出版物內(nèi)容發(fā)布系統(tǒng)及方法
- 音/視頻流發(fā)布方法、流媒體服務(wù)器、發(fā)布端及流媒體系統(tǒng)
- 一種分布式代碼版本發(fā)布系統(tǒng)及方法
- 內(nèi)容發(fā)布方法、裝置、計(jì)算機(jī)設(shè)備以及可讀存儲(chǔ)介質(zhì)
- 文件發(fā)布方法和系統(tǒng)、發(fā)布服務(wù)器和文件生成裝置
- 軟件的發(fā)布質(zhì)量管理系統(tǒng)、方法以及裝置
- 信息發(fā)布方法、裝置、電子設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 信息發(fā)布方法及裝置、存儲(chǔ)介質(zhì)、終端
- 服務(wù)發(fā)布方法及裝置、服務(wù)器、存儲(chǔ)介質(zhì)





