- 中臺落地手記:業務服務化與數據資產化
- 張亮
- 314字
- 2021-09-08 16:35:29
3.2.5 服務保護
Spring Cloud Circuit Breaker(Spring Cloud服務保護)提供各種斷路器的抽象服務。目前支持的斷路器有Netflix Hystrix、Resilience4J、Sentinel、SpringRetry。
圖3-7所示為服務保護示例,當某個Dependency I服務不可用時,可以訪問對應的Fallback方法,這樣不至于因為某個服務不可用而造成后續大量調用鏈阻塞引起服務雪崩。

圖3-7 服務保護示例
常見熔斷閾值設置方式如下所示。
1)訪問超時:當訪問某個服務超時時觸發熔斷。
2)錯誤數量:當訪問某個服務錯誤次數達到閾值時熔斷。
3)拒絕數量:當訪問某個服務被拒絕次數達到閾值時熔斷。
常見的熔斷隔離措施如下所示。
1)線程池隔離:使用新線程完成每次調用,有多少依賴則開多少線程,異步且互不干擾。
2)信號量隔離:每次調用時發放新的許可證,較線程輕量級,但總的許可證受限,常與網關一起使用。