成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

前端簡單的灰度方案,使用nginx

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

一、項目背景

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

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

  • 一個前端項目1.0.0版本

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

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

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

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

1、實現(xiàn)原理

image.png

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

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

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

2、優(yōu)缺點

  • 實現(xiàn)簡單,易于理解

  • 通過nginx可以灰度到具體人員 缺點:

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

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

二、具體實踐

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

正常請求域名 https://www.demo.com

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

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

4、這樣就保證了靜態(tài)資源通過remote_user分開請求,后端服務(wù)通過version請求對應(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ù)中增加對應(yīng)的hader頭,防止出現(xiàn)跨域校驗不通過

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

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

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/127950.html

相關(guān)文章

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

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

    xiangchaobin 評論0 收藏0
  • 馬蜂窩容器化平臺前端賦能實踐

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

    wall2flower 評論0 收藏0
  • 馬蜂窩容器化平臺前端賦能實踐

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

    余學(xué)文 評論0 收藏0
  • 馬蜂窩容器化平臺前端賦能實踐

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

    desdik 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<