灰度發布策略
灰度發布是什么
- 灰度發布是版本升級平滑過渡的一種方式(也可以增加產品的某些特性)。
- 簡而言之,當版本升級時,使部分用戶使用高版本,其他用戶繼續使用低版本,待高版本穩定后,逐步擴大范圍把所有用戶流量都遷移到高版本上面來。
- AB test也是一種灰度發布方式,讓一部分用戶繼續用A,一部分用戶開始用B,如果用戶對B沒有什么反對意見,那么逐步擴大范圍,把所有用戶都遷移到B上面來。
為什么要做灰度發布?
- 靈活選擇用戶參與產品測試。
- 規避一定的發布風險,降低產品迭代升級所影響的范圍。
- 快速獲取用戶的反饋意見,完善產品功能,提升產品質量。
- 避免停服發布給用戶帶來不便。
- 具有容災能力:降低全量發布引起的服務器崩潰等風險,逐步發布產品,逐步控制服務器壓力。
灰度發布常見一般有三種方式
- Nginx+LUA方式
- 根據Cookie實現灰度發布
- 根據來路IP實現灰度發布
灰度發布的流程
- 選定策略:包括用戶規模、發布頻率、功能覆蓋度、回滾策略、運營策略、新舊系統部署策略等
- 篩選用戶:包括用戶特征、用戶數量、用戶常用功能、用戶范圍等
- 部署系統:部署新系統、部署用戶行為分析系統(web analytics)、設定分流規則、運營數據分析、分流規則微調
- 發布總結:用戶行為分析報告、用戶問卷調查、社會化媒體意見收集、形成產品功能改進列表
參考:https://blog.csdn.net/weiwangchao_/article/details/52589615