一、簡介
解決高並發的三把利器:降級、限流、緩存
(1) 什么是服務降級
服務降級,當服務器壓力劇增的情況下,根據當前業務情況及流量對一些服務有策略的降低服務級別,以釋放服務器資源,保證核心任務的正常運行
(2) 服務降級方式
能夠實現服務降級方式很多,常見的有如下幾種情況:
- 部分服務暫停
- 全部服務暫停
- 隨機拒絕服務
- 部分服務延遲
(3) 服務降級與Mock機制
Dubbo的服務降級采用的是mock機制。其具有兩種降級處理方式:Mock Null降級處理,與Mock Class降級處理。
二、Mock Null服務降級處理06-consumer-mocknull
(1) 創建消費者工程
直接復制02-consumer-zk工程,並命名為06-consumer-mocknull
(2) 定義接口
(3) 修改pom文件
由於這里不再需要00-api工程了,所以在pom文件中將對00-api工程的依賴刪除即可
(4) 修改spring-consumer.xml
(5) 修改消費者啟動類
三、Mock Class服務降級處理06-consumer-mockclass
(1) 創建消費者工程
直接復制06-consumer-mocknull工程,並命名為06-consumer-mockclass
(2) 定義Mock Class
在業務接口所在的包中,本例為com.dubbo.service包,定義一個類,該類的命名需要滿足以下規則:業務接口簡單類名 + Mock
(4) 修改spring-consumer.xml
(5) 修改消費者啟動類