應對服務器雪崩的方法有以下這些:
隔離機制:將多個線程分開,比如服務A內總共有100個線程,現在服務A可能會調用服務B,服務C,服務D。我們在服務A進行遠程調用的時候,給不同的服務分配固定的線程,不會把所有線程都分配給某個微服務。比如調用服務B分配30個線程,調用服務C分配30個線程,調用服務D分配40個線程。這樣進行資源的隔離,保證即使下游某個服務掛了,也不至于把服務A的線程消耗完。比如服務B掛了,這時候最多只會占用服務A的30個線程,服務A還有70個線程可以調用服務C和服務D。
超時機制:在上游服務調用下游服務的時候,設置一個最大響應時間,如果超過這個時間,下游未作出反應,就斷開請求,釋放掉線程。
限流機制:限流就是限制系統的輸入和輸出流量已達到保護系統的目的。為了保證系統的穩固運行,一旦達到的需要限制的閾值,就需要限制流量并采取少量措施以完成限制流量的目的。
熔斷機制:在互聯網系統中,當下游服務因訪問壓力過大而響應變慢或失敗,上游服務為了保護系統整體的可用性,可以暫時切斷對下游服務的調用。這種犧牲局部,保全整體的措施就叫做熔斷。
降級機制:降級是從系統功能優先級的角度考慮如何應對系統故障。 服務降級指的是當服務器壓力劇增的情況下,根據當前業務情況及流量對一些服務和頁面有策略的降級,以此釋放服務器資源以保證核心任務的正常運行。降級其實就是為服務提供一個兜底方案,一旦服務無法正常調用,就使用兜底方案。
回答所涉及的環境:聯想天逸510S、Windows 10。
應對服務器雪崩的方法有以下這些:
隔離機制:將多個線程分開,比如服務A內總共有100個線程,現在服務A可能會調用服務B,服務C,服務D。我們在服務A進行遠程調用的時候,給不同的服務分配固定的線程,不會把所有線程都分配給某個微服務。比如調用服務B分配30個線程,調用服務C分配30個線程,調用服務D分配40個線程。這樣進行資源的隔離,保證即使下游某個服務掛了,也不至于把服務A的線程消耗完。比如服務B掛了,這時候最多只會占用服務A的30個線程,服務A還有70個線程可以調用服務C和服務D。
超時機制:在上游服務調用下游服務的時候,設置一個最大響應時間,如果超過這個時間,下游未作出反應,就斷開請求,釋放掉線程。
限流機制:限流就是限制系統的輸入和輸出流量已達到保護系統的目的。為了保證系統的穩固運行,一旦達到的需要限制的閾值,就需要限制流量并采取少量措施以完成限制流量的目的。
熔斷機制:在互聯網系統中,當下游服務因訪問壓力過大而響應變慢或失敗,上游服務為了保護系統整體的可用性,可以暫時切斷對下游服務的調用。這種犧牲局部,保全整體的措施就叫做熔斷。
降級機制:降級是從系統功能優先級的角度考慮如何應對系統故障。 服務降級指的是當服務器壓力劇增的情況下,根據當前業務情況及流量對一些服務和頁面有策略的降級,以此釋放服務器資源以保證核心任務的正常運行。降級其實就是為服務提供一個兜底方案,一旦服務無法正常調用,就使用兜底方案。
回答所涉及的環境:聯想天逸510S、Windows 10。