1.服務降級目標
保證核心服務可用,非核心服務弱可用,甚至不可用
2.服務降級手段
2.1.拒絕部分請求
2.2.關閉部分服務(業務相關)
3.拒絕部分請求:
3.1.拒絕部分老的請求
減輕微服務請求處理數量
確保”新“請求正常響應
RPC隊列方式(請求入隊,出隊時間處理請求時,檢查請求在隊列請求時間超過一定時間【比如1s】,直接丟棄)
3.2.優先級請求方式
非核心 請求直接丟棄
業務緊密
3.3.隨機拒絕方式
隨機丟棄一定比例請求
網站一會可用,一會不可用
4.服務層降級架構層次
4.1.集中式
只在網關層實施降級
4.2. 自治式
網關層 -》業務邏輯層-》數據訪問層(每層都做降級)
總結:一般 app->nginx->網關層->業務邏輯層->數據訪問層->db/cache 請求按照這個層次每一層能夠處理的請求數據是遞減的,所以如果在網關層實施降級,就會比較難知道業務層真正能處理多少條,所以一般使用自治式。