国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

前端簡(jiǎn)單的灰度方案,使用nginx

社區(qū)管理員 / 1548人閱讀

一、項(xiàng)目背景

前端項(xiàng)目開發(fā)一個(gè)模塊,上線前需要灰度一部分用戶,實(shí)現(xiàn)一個(gè)臨時(shí)的灰度方案。

現(xiàn)有項(xiàng)目狀況:

  • 一個(gè)前端項(xiàng)目1.0.0版本

  • 后端服務(wù)1.0.0版本

  • 后端灰度服務(wù)2.0.0版本

  • 一個(gè)域名解析到前端服務(wù)80、443端口

  • 前端通過nginx轉(zhuǎn)發(fā)靜態(tài)文件

1、實(shí)現(xiàn)原理

image.png

  • 1、打包一份前端項(xiàng)目2.0.0版本,上傳服務(wù)器,部署不同端口

  • 2、通過nginx獲取文件中攜帶的請(qǐng)求頭remote_user,在nginx代理靜態(tài)文件的時(shí)候判斷當(dāng)前用戶是否灰度中,請(qǐng)求不同的靜態(tài)資源

  • 3、前端打包的時(shí)候,給請(qǐng)求的接口增加版本號(hào)2.0.0,請(qǐng)求接口,通過版本號(hào)判斷訪問的后端灰度服務(wù)。

2、優(yōu)缺點(diǎn)

  • 實(shí)現(xiàn)簡(jiǎn)單,易于理解

  • 通過nginx可以灰度到具體人員 缺點(diǎn):

  • 維護(hù)兩套程序,不適合長(zhǎng)時(shí)間的灰度方案

  • 灰度人數(shù)有限,nginx參數(shù)不能過長(zhǎng)(可分開配置避免這個(gè)問題)

二、具體實(shí)踐

1、配置一套前端服務(wù),部署在80端口,請(qǐng)求接口版本號(hào)version:1.0.0

正常請(qǐng)求域名 https://www.demo.com

2、另外部署一套前端服務(wù),部署端口8080端口,請(qǐng)求接口版本號(hào)version: 2.0.0

3、比如要灰度test.lv san.zhang人員名單

4、這樣就保證了靜態(tài)資源通過remote_user分開請(qǐng)求,后端服務(wù)通過version請(qǐng)求對(duì)應(yīng)的服務(wù)。

配置nginx

server {     listen  80;     server_name www.demo.com;     location / {         if ($http_remote_user ~* (test\.lv|san.zhang)){             proxy_pass http://localhost:8081;         }         root /data/demo;         index index.html index.htm;     }     location ^~/api/ {         if ($http_version = "2.0.0"){             # 代理到新的服務(wù)             proxy_pass http://10.11.12.234:9001;         }         proxy_pass http://10.11.12.234:9002;     } } 復(fù)制代碼

三、注意

1、nginx配置需要增加, 保證header小寫可以通過nginx

underscores_in_headers on; 復(fù)制代碼

2、增加了自定義header,所以在nginx或后端服務(wù)中增加對(duì)應(yīng)的hader頭,防止出現(xiàn)跨域校驗(yàn)不通過

// 以go為例,增加自定義header c.Header("Access-Control-Allow-Headers", "Content-Type, remote_user, api_version")

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/127950.html

相關(guān)文章

  • 基于Nodejs前端灰度發(fā)布方案_20190228

    摘要:基于的前端灰度發(fā)布方案灰度發(fā)布和測(cè)試簡(jiǎn)介灰度發(fā)布將某個(gè)功能灰度發(fā)布逐漸放量給特定線上人群,避免新功能全量上線帶來的風(fēng)險(xiǎn)。如果我們把這些版本信息管理起來,并且通過特定的手段對(duì)用戶請(qǐng)求應(yīng)用測(cè)試就可以完成前端不同版本的灰度發(fā)布。 基于Nodejs的前端灰度發(fā)布方案 1. 灰度發(fā)布和A/B測(cè)試簡(jiǎn)介 灰度發(fā)布 將某個(gè)功能灰度發(fā)布(逐漸放量)給特定線上人群,避免新功能全量上線帶來的風(fēng)險(xiǎn)。 show...

    xiangchaobin 評(píng)論0 收藏0
  • 馬蜂窩容器化平臺(tái)前端賦能實(shí)踐

    摘要:本文將結(jié)合馬蜂窩容器化平臺(tái)賦能前端應(yīng)用構(gòu)建的實(shí)踐經(jīng)驗(yàn),介紹整個(gè)平臺(tái)背后的設(shè)計(jì)和實(shí)現(xiàn)原理,取得的一些效果及問題的優(yōu)化方案。如果使用容器化平臺(tái)就不會(huì)出現(xiàn)這方面的擔(dān)憂。 容器對(duì)前端開發(fā)真的有用嗎?答案是肯定的。 最初當(dāng)我向公司的前端同學(xué)「安利」容器技術(shù)的時(shí)候,很多人都會(huì)說:「容器?這不是用在后端的技術(shù)嗎?我不懂啊,而且前端開發(fā)用不上吧。」 showImg(https://segmentfau...

    wall2flower 評(píng)論0 收藏0
  • 馬蜂窩容器化平臺(tái)前端賦能實(shí)踐

    摘要:本文將結(jié)合馬蜂窩容器化平臺(tái)賦能前端應(yīng)用構(gòu)建的實(shí)踐經(jīng)驗(yàn),介紹整個(gè)平臺(tái)背后的設(shè)計(jì)和實(shí)現(xiàn)原理,取得的一些效果及問題的優(yōu)化方案。如果使用容器化平臺(tái)就不會(huì)出現(xiàn)這方面的擔(dān)憂。 容器對(duì)前端開發(fā)真的有用嗎?答案是肯定的。 最初當(dāng)我向公司的前端同學(xué)「安利」容器技術(shù)的時(shí)候,很多人都會(huì)說:「容器?這不是用在后端的技術(shù)嗎?我不懂啊,而且前端開發(fā)用不上吧。」 showImg(https://segmentfau...

    余學(xué)文 評(píng)論0 收藏0
  • 馬蜂窩容器化平臺(tái)前端賦能實(shí)踐

    摘要:本文將結(jié)合馬蜂窩容器化平臺(tái)賦能前端應(yīng)用構(gòu)建的實(shí)踐經(jīng)驗(yàn),介紹整個(gè)平臺(tái)背后的設(shè)計(jì)和實(shí)現(xiàn)原理,取得的一些效果及問題的優(yōu)化方案。如果使用容器化平臺(tái)就不會(huì)出現(xiàn)這方面的擔(dān)憂。 容器對(duì)前端開發(fā)真的有用嗎?答案是肯定的。 最初當(dāng)我向公司的前端同學(xué)「安利」容器技術(shù)的時(shí)候,很多人都會(huì)說:「容器?這不是用在后端的技術(shù)嗎?我不懂啊,而且前端開發(fā)用不上吧。」 showImg(https://segmentfau...

    desdik 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<