成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

解密微服務雪崩:保護您的應用免受災難性故障的威脅

開發 前端
隨著微服務架構的廣泛應用,應用程序的復雜性已經得到了顯著提高,但與之同時,微服務雪崩問題也開始引起廣泛關注。微服務雪崩是指在微服務架構中,一個或多個微服務出現故障或不可用時,導致整個系統的不穩定甚至崩潰。

今日目標

  • 了解雪崩產生的原因
  • 理解常見解決方案

隨著微服務架構的廣泛應用,應用程序的復雜性已經得到了顯著提高,但與之同時,微服務雪崩問題也開始引起廣泛關注。微服務雪崩是指在微服務架構中,一個或多個微服務出現故障或不可用時,導致整個系統的不穩定甚至崩潰。本文將介紹微服務雪崩的產生原因以及一些常見的解決方案。

1. 雪崩介紹

微服務中,服務間調用關系錯綜復雜,一個微服務往往依賴于多個其它微服務。

圖片圖片

如圖,如果服務提供者I發生了故障,當前的應用的部分業務因為依賴于服務I,因此也會被阻塞。此時,其它不依賴于服務I的業務似乎不受影響。

圖片圖片

但是,依賴服務I的業務請求被阻塞,用戶不會得到響應,服務器的這個線程不會釋放,于是越來越多的用戶請求到來,越來越多的線程會阻塞:

圖片圖片

服務器支持的線程和并發數有限,請求一直阻塞,會導致服務器資源耗盡,從而導致所有其它服務都不可用,那么當前服務也就不可用了。

那么,依賴于當前服務的其它服務隨著時間的推移,最終也都會變的不可用,形成級聯失敗,雪崩就發生了:

圖片圖片

總結雪崩產生原因

  • 依賴關系復雜性: 在微服務架構中,各個服務之間存在復雜的依賴關系。如果一個服務出現故障,它可能會導致依賴于它的其他服務也無法正常工作。
  • 大規模部署: 大規模部署意味著有大量的服務實例在運行,當其中一部分實例出現問題時,整個系統可能受到影響。
  • 同時故障: 有時,多個服務可能因相同的原因(如硬件故障、網絡問題或配置錯誤)而同時故障,導致雪崩效應。
  • 超時和重試: 如果某個服務在請求時長時間未響應,其他服務可能會發起重試請求,導致更多的負載,最終導致系統崩潰。
  • 資源耗盡: 當某個服務的資源(如數據庫連接、線程池)被過度消耗時,它可能會無法響應請求,從而引發雪崩。

2. 雪崩解決方案

雪崩解決常見解決方案有以下幾種:

  • 超時處理:對于每個微服務的請求,應該設置合理的超時時間。超時時間應該充分考慮服務的響應時間和業務需求,以避免等待時間過長導致的問題
  • 艙壁模式(Bulkhead Pattern for Avalanche):系統遇到雪崩風險時,通過隔離不同服務或組件,以防止一個故障或高負載情況影響整個系統的穩定性。是一種應對潛在雪崩的設計模式
  • 限流(Rate Limiting): 限流可以控制對服務的請求速率,確保不會超出服務的處理能力。這可以防止流量過多而導致系統崩潰
  • 熔斷器模式(Circuit Breaker Pattern):熔斷器模式是一種容錯模式,用于避免雪崩效應。熔斷器會監控服務的健康狀態,當服務連續出現故障或響應時間超過閾值時,熔斷器會打開,阻止進一步的請求流量流向該服務,從而保護系統的穩定性
  • 降級策略(Fallback): 降級是一種處理服務不可用或性能下降的策略,它允許系統在出現問題時提供有限但穩定的功能,而不是完全失敗。當服務出現問題時,降級策略可以返回默認值、緩存數據、執行備用操作或者提供一個基本的響應,以確保用戶仍然能夠訪問系統的一部分功能

2.1. 超時處理

針對服務調用增加超時機制(一般dubbo默認30s),一旦超時自動釋放資源,因釋放資源較快一定程度可抑制資源耗盡問題。但如果在超時釋放的時間內陡增大量請求,依然會導致服務宕機不可用。

圖片圖片

2.2. 艙壁模式(Bulkhead Pattern for Avalanche)

倉壁模式來源于船艙的設計:船艙都會被隔板分離為多個獨立空間,當船體破損時,只會導致部分空間進入,將故障控制在一定范圍內,避免整個船體都被淹沒。于此類似,我們可以限定每個業務能使用的線程數,避免耗盡整個服務器的資源,因此也叫線程隔離。

圖片圖片

2.3. 熔斷器模式(Circuit Breaker Pattern)

熔斷器模式:由熔斷器統計業務執行的異常比例,如果超出閾值則會熔斷該業務,攔截訪問該業務的一切請求。

熔斷器會統計訪問某個服務的請求數量,異常比例

圖片圖片

當發現訪問服務D的請求異常比例過高時,認為服務D有導致雪崩的風險,會攔截訪問服務D的一切請求,形成熔斷:

圖片圖片

2.4. 限流

限流:限制業務訪問的QPS,避免服務因流量的突增而故障。

圖片圖片

3.總結

雪崩問題:

  • 微服務之間相互調用,因為調用鏈中的一個服務故障,引起整個鏈路都無法訪問的情況。

解決方案:

限流是對服務的保護,避免因瞬間高并發流量而導致服務故障,進而避免雪崩。是一種預防措施。

超時處理、線程隔離、降級熔斷是在部分服務故障時,將故障控制在一定范圍,避免雪崩。是一種補救措施。

責任編輯:武曉燕 來源: springboot葵花寶典
相關推薦

2022-11-07 10:27:08

2023-08-28 16:22:06

2015-06-05 10:13:09

2020-08-31 08:06:43

微服務故障雪崩

2022-01-13 09:54:58

微服務 Istio 通信

2021-09-27 15:23:50

低代碼開發安全

2021-11-29 18:10:30

網絡攻擊數據安全數據泄露

2021-03-15 10:29:04

數據中心電子腐蝕突然故障

2024-11-08 09:45:47

2014-12-04 10:05:18

2022-03-04 10:44:01

堆噴射惡意代碼

2022-08-16 08:19:04

Sentinel微服務

2023-06-12 15:04:40

2016-11-14 13:56:14

2021-02-03 15:41:46

物聯網IoT聯網安全

2018-02-05 15:10:35

2023-02-22 15:50:18

2021-04-06 14:24:19

物聯網安全網絡攻擊網絡威脅

2022-11-03 13:47:26

云遷移云計算轉型
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩欧美一区二区三区四区 | 爱草在线| 国产精品视频一二三区 | 男女视频在线观看 | 红色av社区 | 日本亚洲欧美 | 国产精品久久久久久久白浊 | 欧洲成人免费视频 | 久久精品欧美一区二区三区不卡 | 国产精品久久久久久亚洲调教 | 久久亚洲一区二区 | 亚洲精品久久久一区二区三区 | 有码在线| 黄色毛片视频 | 亚洲国产精品一区二区第一页 | 特黄特黄a级毛片免费专区 av网站免费在线观看 | 精品人伦一区二区三区蜜桃网站 | av黄色片| 日韩欧美成人一区二区三区 | 成人国产综合 | 国产成人av一区二区三区 | 九九热视频这里只有精品 | 羞羞视频免费在线 | 欧美日韩综合 | 亚洲精品一二三区 | 久久久久久美女 | 亚洲二区视频 | 91精品久久久久 | 亚洲综合婷婷 | 精品国产不卡一区二区三区 | 国产一区二区影院 | 密桃av| 国产精品久久久久久久久久免费 | 久久久久久国产精品 | 国产免费高清 | 成人免费观看视频 | 91精品国产综合久久精品 | 天天看天天干 | 99综合| av在线免费观看网站 | 日韩精品一区二区三区四区视频 |