一. 灰度發(fā)布

一、灰度發(fā)布是什么?
1、灰度發(fā)布,又被稱之為金絲雀發(fā)布,是指某次新發(fā)布功能特性和舊功能特性之間能夠以平滑過渡的方式呈現(xiàn)給用戶,
   就像金絲雀的羽毛一樣多種顏色平滑漸變。

舉個例子,
某個已上線處于運行中的系統(tǒng)需要一次新的功能迭代,但是由于功能變動較大,
所以發(fā)布需要考慮用戶的使用反饋以及代碼可能存在一些未知的異常,
這時候則需要將新的功能逐步地一批一批的推送給用戶。在這個逐步放量的過程中,
可以根據(jù)用戶接受度(用戶投訴多不多)和觀察本次功能是否存在上線前未發(fā)現(xiàn)的異常,
來決定是否繼續(xù)發(fā)布推送新功能,如果新功能反饋較差或者存在功能異常問題,
則停止放量或者回滾到之前穩(wěn)定的版本,及時修改問題。這樣便避免一次推送情況下,
如果出現(xiàn)問題則造成線上問題突然上升造成阻塞用戶使用的問題。
二.灰度發(fā)布的優(yōu)點
1.提前收集用戶使用意見,及時完善產(chǎn)品功能
2.控制未知異常只出現(xiàn)在小范圍內(nèi),不影響大多數(shù)用戶
3.發(fā)現(xiàn)產(chǎn)品是否存在外在問題(如合規(guī)),可及時回滾至已舊版本
三、前端灰度發(fā)布的要素
1.放量規(guī)則
如果逐步推送新功能,則必須有一種規(guī)則讓用戶按照某些特征分成不同的群體,
這個規(guī)則可以是年齡,城市,或者用戶注冊時的id。
例如,用戶注冊時有一個從0自增的序號位,當灰度放量時可以以該序號為維度,
從小到大的放量,直至百分百完成。
一個完善的系統(tǒng)在設(shè)計之初一定會考慮到灰度方案,
如果你仔細觀察用戶的uid在注冊的時候一定有一個序號位,
像身份證號里第十五位是從0-9的序號位,
一般的用戶UID會留兩位作為自增序號位,灰度時這兩位一般被作為灰度特征。
2.資源新舊版本
能明確的標識出要給用戶展示兩種頁面形態(tài),可以是以前端靜態(tài)版本號的形式,
如每次發(fā)布資源后,
靜態(tài)資源的版本號鏈接改變一下,這時候灰度則其實是兩個不同資源請求鏈接逐步從舊到新的過程。
四、灰度實現(xiàn)原理
下面是灰度的實現(xiàn)基本原理,最關(guān)鍵的還是判斷灰度用戶這一步操作,
可以在請求發(fā)出去前進行判斷,然后直接請求對應(yīng)的資源,也可以請求到了服務(wù)端后,
服務(wù)端先區(qū)別出用戶是否屬于灰度名單內(nèi),再返回對應(yīng)資源內(nèi)容,
具體還要看前端應(yīng)用是怎樣的形式部署的,服務(wù)端渲染或者是客戶端渲染均有關(guān)系。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容