服務之間的依賴關系,如果有被依賴的服務掛了以后,造成其它服務也會出現請求堆積、資源占用,慢慢擴散到所有服務,引發雪崩效應。
而容錯就是要解決這類問題,常見的方式:
主動超時:Http請求主動設置一個超時時間,超時就直接返回,不會造成服務堆積限流:限制最大并發數熔斷:當錯誤數超過閾值時快速失敗,不調用后端服務,同時隔一定時間放幾個請求去重試后端服務是否能正常調用,如果成功則關閉熔斷狀態,失敗則繼續快速失敗,直接返回。(此處有個重試,重試就是彈性恢復的能力)隔離:把每個依賴或調用的服務都隔離開來,防止級聯失敗引起整體服務不可用降級:服務失敗或異常后,返回指定的默認信息