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

用通俗的話講講熔斷和服務降級

開發 前端
如果不引入服務降級,那么用戶真可能會直接看到一個只有資深程序員才能看懂的異常提示,比如哪號內存出問題,或者xx組件的xx行出問題。與其這樣,還不如返回個能讓用戶看得懂的界面。

熔斷和降級(也叫服務降級),一般是通過組件實現的,而不是spring框架內。比如spring boot框架做增刪改查,外加引入spring cloud框架的hystrix或spring cloud alibaba框架的sentinel做熔斷和降級,當然還可以做限流。

熔斷的本意是,當下對某個api接口發起的服務,錯誤率太高,或者耗時過長請求的比例過高,所以就認為該api接口當下負載過大,應當在之后的一段時間內,讓該api停止對外服務。

和熔斷相關的有如下的參數。

1 時間窗口,比如5秒。

2 最小訪問量,比如100個。

3 錯誤率或者是慢請求的比例下限,比如是50%。

4 熔斷后的等待時間,比如是2秒。

比如有個服務api是對外提供查詢風控信息的,設置了上述熔斷參數,遇到如下情況時會熔斷。

1 時間窗口5秒內,至少收到100個請求。這個是先決條件,比如5秒內只收到99個請求,哪怕這99個請求全都失敗(或返回過慢),也不會熔斷。

2 如果5秒內收到100個請求后,再去看里面失效請求或慢查詢請求的比例,如果高于50%,即該接口熔斷2秒,這個過程中,發到該風控接口的請求全都立即返回失敗。

3 在2秒以后,(hystrix或sentinel等)支持熔斷的組件再去采樣,如果依然是5秒內請求個數大于等于100,并且失敗或慢查詢的比例高于50%,繼續熔斷2秒。否則恢復正常。

為什么要引入熔斷機制呢?因為請求api的線程,是需要耗費內存等資源的,比如請求風控api這個線程,持續了5秒,那么服務器在這5秒以內,就得耗費一定的資源維護這個線程。

對服務器來說,能容納的請求線程個數是有上限的,具體要看服務器的配置,假設是1000個。如果不引入熔斷機制,而并發量又高,一秒會新增1000個訪問風控API接口的線程,那么每個線程都得被維持5秒,而且由于風控接口可能出現故障,不少線程(或者說大多數線程)又拿不到期望結果。這種情況下,與其線程在5秒后因失敗而被終止,那么還不如立即啟動熔斷機制,讓一些線程在發起請求后立即得到錯誤的結果。

否則的話,大量堆積的線程,就會耗盡服務器的內存等資源,甚至可能還耗盡數據庫連接對象,最終導致部署在這臺服務器上的所有服務都不可用。所以,熔斷其實是種保護機制,尤其在高并發場景下,真得預先設置好熔斷策略。

服務降級的本意是,在高并發等場景,一些用戶請求難免會得不到預期的結果,這種情況下,應當針對這些請求快速返回,同時提供一個用戶尚能接受的結果。

比如在某電商網站,有時候去搜索一個商品,期望的結果自然是返回搜索列表,但在某個時刻,正好服務器里并發量太高,或者因為種種原因,搜索商品的請求無法得到期望結果,這種情況下,較好的處理方法是,快速(而不是等待若干時間)返回一個“請稍后再試”的頁面。

如果不引入服務降級,那么用戶真可能會直接看到一個只有資深程序員才能看懂的異常提示,比如哪號內存出問題,或者xx組件的xx行出問題。與其這樣,還不如返回個能讓用戶看得懂的界面。

在一些事件場景,熔斷和服務降級一般是整合一起使用的,比如查詢商品的接口方法出現熔斷,需要等待2秒后再采樣,在這2秒內,hystrix或sentinel等能實現服務降級功能的組件,會把請求抓發到“請稍后再試”的頁面,從而實現服務降級。

責任編輯:武曉燕 來源: 老胡聊Java
相關推薦

2025-03-26 00:58:14

2019-05-31 08:24:19

Linuxshell命令別名

2024-11-29 16:02:17

2010-03-29 14:56:36

云計算

2021-10-22 09:28:15

開發技能代碼

2017-11-16 15:45:25

服務降級熔斷

2019-09-19 09:03:13

Docker負載均衡服務

2011-03-25 17:30:02

Nagios

2025-03-31 07:51:09

2022-06-17 12:05:25

微服務注冊

2017-10-24 15:25:46

微服務架構.識別

2011-07-26 09:12:23

2019-08-13 15:36:57

限流算法令牌桶

2012-12-03 13:50:40

IBMdW

2023-11-02 17:52:30

架構模式微服務服務治理

2011-09-28 17:21:47

抄襲

2021-10-22 19:23:10

鴻蒙HarmonyOS應用

2024-09-02 08:54:24

2022-05-09 08:21:29

Spring微服務Sentinel

2019-09-19 14:57:27

Docker語言技術
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人在线播放网站 | 国产美女精品视频 | 亚洲精品久久久久久久久久吃药 | 开操网 | 国产极品车模吞精高潮呻吟 | 日韩美女一区二区三区在线观看 | 日韩国产欧美一区 | 欧美一级免费看 | 国产精品美女久久久久aⅴ国产馆 | 高清欧美性猛交xxxx黑人猛交 | 久久免费高清视频 | 成人免费淫片aa视频免费 | 日本天天操 | 欧美综合在线观看 | 欧美va大片 | 在线播放一区 | 狠狠干天天干 | 81精品国产乱码久久久久久 | 99只有精品 | 91精品国产综合久久精品 | 91精品国产乱码久久久久久久久 | 夜夜骚| 天天夜碰日日摸日日澡 | av乱码 | 国产丝袜一区二区三区免费视频 | 久久免费高清视频 | 成人福利网站 | 99re视频在线 | 精品日韩一区二区三区 | 中文字幕免费视频 | 国产1区2区 | 免费人成在线观看网站 | 国产极品粉嫩美女呻吟在线看人 | 久久久入口 | 国产日韩欧美一区二区 | 天天干天天插天天 | 日本一二三区在线观看 | 黄网在线观看 | 国产成人精品免高潮在线观看 | 成年人的视频免费观看 | 国产精品一区二区在线免费观看 |