灰度上線說明文件

Liuboxx1發表於2018-09-06

灰度上線說明文件

1、概念

灰度釋出是指在黑與白之間,能夠平滑過渡的一種釋出方式。AB test就是一種灰度釋出方式,讓一部分使用者繼續用A,一部分使用者開始用B,如果使用者對B沒有什麼反對意見,那麼逐步擴大範圍,把所有使用者都遷移到B上面來。灰度釋出可以保證整體系統的穩定,在初始灰度的時候就可以發現、調整問題,以保證其影響度。

2、目前實現的方式有三種

  • Nginx+LUA方式
  • 根據Cookie實現灰度釋出
  • 根據來路IP實現灰度釋出

3、A/B測試流程

這裡寫圖片描述

nginx設定說明

nginx目錄

     nginx.conf   ---   vhost(dir)
                            |
                         xxx(dir)
                         /      \
               ab.release        admin.xxx.hbsaas.com.conf        

ab.release

    ###########灰色釋出設定###########
    #設定 defaultRoot
    set $defaultRoot "/data1/wwwroot/default/";

    #設定 專案資料夾
    set $dirName "xxx/";
    if ($remote_addr ~ "1.202.70.198") {
        set $dirName "xxx180905/";
    }

    #設定 專案資料夾的絕對路徑
    set $rootDir "${defaultRoot}${dirName}";

    #下面這些就得在各個配置檔案中設定
    #set $webRoot "${defaultRoot}${dirName}huiyuan/backend/web";
    #root $webRoot;

admin.xxx.hbsaas.com.conf

#引入ab測試配置檔案
include "./vhost/xxx/ab.release";
#下面{dirName}後面的路徑是根據具體專案路徑設定的,非固定
set $webRoot "${defaultRoot}${dirName}huiyuan/backend/web";
root $webRoot;

相關文章