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刪除未暫存的檔案,這一步執行完就全空了...