新需求上線,灰度測 限流測

2022-02-24 08:50:40 字數 1325 閱讀 4543

1. 新需求場景

新需求即將上線,雖然已經經歷了,開發自測,測試環境測試,堡壘環境測試。

但是還是不敢直接發布到生產環境,全量接入生產流量投入執行,新的功能牽扯到了n多個場景。

而測試覆蓋率也不竟然全部,如果漏掉乙個場景,恰巧生產環境命中,可能就會帶來很多損失

那麼如何避免? 有沒有好的方案來解決?

2. 灰度測試 , 緩慢接入生產流量

2.1:灰度測試場景

有些場景,在測試環境無法測試,必須要到生產環境驗證。這個時候就需要給新功能做好開關,只有配置過的使用者才能進入到新的功能邏輯中。從而進行灰度測試。

2.2 :緩慢接入生產流量

灰度測試通過,但是需要開少量流量,來進行觀察新功能是否有異常, 比如先開5%的流量,在開10%的流量,在開20%的流量 來驗證新功能。

3. 技術實現

3.1: 分析下來,其實就是乙個開關,需要相容如上場景,比如按配置的userid,及userid 尾號來進行灰度測試和限流。

具體code 如下:

/**

* 限流檢查**

@param

baseentity

* @param

checkvalue

* @return

*/public

static

boolean

limitcheck(limitflowbaseentity baseentity, string checkvalue)

/*** 限流檢測**

@param

isopen

* @param

limitnums

* @param

checkvalue

* @return

*/public

static

boolean limitcheck(boolean

isopen, string limitnums, string checkvalue)

//比對尾號是否相等 => 限流

if (checkvalue.length() >=num.length()

&& num.equals(checkvalue.substring(checkvalue.length() -num.length())))

}return

checkresult;

} catch

(exception e)

return

false

; }

//配置實體

public

class

limitflowbaseentity

系統提測及上線規範(系統上線必讀!)

1 需求上線 指產品推動,基於 prd 的需求上線 1.1 提測 1.2 上線前準備 所有的需求上線前必須提交系統上線計畫文件 模板見 todo 1.3 預上線階段 1.4 正式上線 1.5 觀察階段 2 技術優化上線 一般指效能優化,一般無 qa 測試 2.1 上線前準備 上線前必須提交系統上線計...

一種新的測轉速的方法

最近客戶要測乙個軸的轉速,但是軸上不能裝齒輪 也不能開凹槽,所以考慮用光電式的感測器來測。以前用過的一種發出雷射的感測器,然後在軸上面貼反光標籤來測轉速。但是這次買的光電轉速感測器是這樣的 這感測器發出的是紅外光線,它的檢測方式是漫反射式,檢測目標是透明和不透明的物體。所以我的第一反應是這種感測器應...

Git建立空白新分支 親測很好用

向分支提交乙個初始的空commit,保證完全復位。建立並切換新分支 git branch建立乙個新分支。git checkout切換到這個新的分支。git rm cached r 刪除快取的檔案,這一步執行完所有檔案都程式設計未暫存了。git clean f d刪除未暫存的檔案,這一步執行完就全空了...