什麼是降級?
1.開關
先講一下開關的由來,例如京東在6月18日做店慶促銷活動,在交易下單環節,可能需要調用A、B、C三個接口來完成,但是其實A和B是必須的,C隻是附加的功能(例如在下單的時候做一下推薦),可有可無,在平時系統沒有壓力,容量充足的情況下,調用下沒問題,但是在類似店慶之類的大促環節,系統已經滿負荷了,這時候其實完全可以不去調用C接口,怎麼實作這個呢?改代碼?no,no,no,這樣太不靈活,此時開關誕生了,開發人員隻要簡單執行一下指令或者點一下頁面,就可以關掉對于C接口的調用,在大促過去之後,再把開關恢複回去即可。
2.什麼是服務降級
服務降級,當伺服器壓力劇增的情況下,根據目前業務情況及流量對一些服務和頁面有政策的降級,以此釋放伺服器資源以保證核心任務的正常運作。
3.服務降級方式:
服務接口拒絕服務:無使用者特定資訊,頁面能通路,但是添加删除提示伺服器繁忙。頁面内容也可在Varnish或CDN内擷取。
頁面拒絕服務:頁面提示由于服務繁忙此服務暫停。跳轉到varnish或nginx的一個靜态頁面。
延遲持久化:頁面通路照常,但是涉及記錄變更,會提示稍晚能看到結果,将資料記錄到異步隊列或log,服務恢複後執行。
随機拒絕服務:服務接口随機拒絕服務,讓使用者重試,目前較少有人采用。因為使用者體驗不佳。