有時候,在上線新功能或頁面改版時,咱們很難拿捏準:新版功能是否優於老版。一般的作法,就是使用AB
策略:針對不一樣的用戶,展現差別的頁面,提供不一樣的功能。電商網站的推薦功能,本質也是AB
策略。算法
經過使用AB
策略,能夠作到逐步改進現有功能。就好比咱們上線新發版,能夠選擇分流老版本20%的流量到新版本,確認新版本沒問題後,再將流量所有切到新版本。微服務
設計上,主要從兩個角度來考慮AB
策略:網站
AB
的實驗方案,A
作什麼?B
作什麼?AB
分流,經過設備區分?性別區分?仍是其餘同時,AB
策略也存在一個層級的問題,即,在現有的AB
上,如何再進行AB
?設計
咱們能夠將AB
策略抽象成一個微服務:AB服務
。AB服務
主要提供分流服務,業務端經過請求該服務來決定使用A
策略仍是B
策略。還能夠將AB服務
,做爲一個開關來使用,本質上並無什麼區別。code
另一個核心問題:咱們能提供哪些分流算法呢?HASH
取模,或者取餘,這些均可以。電商