精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

面試官:你知道怎么把Spring Cloud性能優化提升10倍以上嗎?

開發 架構
如果是較多用戶量,高峰每秒高達上萬并發請求的互聯網公司的系統,使用Spring Cloud技術就有一些問題需要注意了。

一、寫在前面

相信不少朋友都在自己公司使用Spring Cloud框架來構建微服務架構,畢竟現在這是非常火的一門技術。

如果只是用戶量很少的傳統IT系統,使用Spring Cloud可能還暴露不出什么問題。

如果是較多用戶量,高峰每秒高達上萬并發請求的互聯網公司的系統,使用Spring Cloud技術就有一些問題需要注意了。

二、場景引入,問題初現

先不空聊原理、理論,來講一個真實的例子,這是我的一個朋友在創業互聯網公司發生過的真實案例。

朋友A的公司做互聯網類的創業,組建了一個小型研發團隊,上來就用了Spring Cloud技術棧來構建微服務架構的系統。

一段時間沒日沒夜的加班,好不容易核心業務系統給做出來了,平時正常QA測試沒發現什么大毛病,感覺性能還不錯,一切都很完美。

然后系統就這么上線了,一開始用戶規模很小,注冊用戶量小幾十萬,日活幾千用戶。

每天都有新的數據進入數據庫的表中,就這么日積月累的,沒想到數據規模居然慢慢吞吞增長到了單表幾百萬。

這個時候呢,看起來也沒太大的毛病,就是有用戶反映,系統有些操作,會感覺卡頓幾秒鐘,會刷不出來頁面。

這是為啥呢?

  • 核心原因是單表數據量大了一些,達到了幾百萬。
  • 有個別服務,跑的SQL比較復雜,一大堆的多表關聯
  • 并且還沒有設計好索引,或者是設計了索引,但無奈一些小弟寫了上百行的大SQL,SQL實在太復雜了,那么一個SQL跑出來好幾秒肯定是正常的。

如果大家對微服務框架有點了解的話,應該知道,比如Feign + Ribbon組成的服務調用框架,是有接口調用超時這一說的,有一些參數可以設置接口調用的超時時間。

如果你調用一個接口,好幾秒刷不出來,人家就超時異常返回,用戶就刷不出來頁面了。

三、揚湯止沸,飲鴆止渴

一般碰到這種事情,一大坨屎一樣的SQL擺在那兒,寫SQL的人過一個月自己都看不懂了,80%的工程師看著都不愿意去花時間重寫和優化。

一是修改的人力成本太高,二是誰敢負擔這責任呢?

系統跑的好好的,就是慢了點而已,結果你硬是亂改一通,重構,把系統核心業務流程搞掛了怎么辦?

所以,那些兄弟第一反應是:增加超時時間啊!接口慢點可以,但是別超時不響應啊!

咱們讓接口執行個幾秒把結果返回,用戶不就可以刷出來頁面了!不用重構系統了啊!輕松+愉快!

如何增加呢?很簡單,看下面的參數就知道了:

大家如果看過之前的文章,應該知道,Spring Cloud里一般會用hystrix的線程池來執行接口調用的請求。

所以設置超時一般設置兩個地方,feign和ribbon那塊的超時,還有hystrix那塊的超時。其中后者那塊的超時一般必須大于前者。

Spring Cloud玩兒的好的兄弟,可千萬別看著這些配置發笑,因為我確實見過不少Spring Cloud玩兒的沒那么溜的哥們,真的就這么干了。

好了,日子在繼續。。。

優化了參數后,看上去效果不錯,用戶雖然覺得有的頁面慢是慢點,但是起碼過幾秒能刷出來。

這個時候,日活幾千的用戶量,壓根兒沒什么并發可言,高峰期每秒最多一二十并發請求罷了。

大家看看下面這張圖,感受一下現場氛圍:

四、問題爆發,洪水猛獸

隨著時間的推移,公司業務高速發展……

那位兄弟的公司,在系統打磨成熟,幾萬用戶試點都ok之后,老板立馬拿到一輪幾千萬的融資。

公司上上下下意氣風發啊!緊接著就是組建運營團隊,地推團隊,全國大范圍的推廣。

總之就是三個字:推!推!推!

這一推不打緊!研發人員在后臺系統發現,自己的用戶量蹭蹭蹭的直線增長。

注冊用戶增長了幾十倍,突破了千萬級別,日活用戶也翻了幾十倍,在活動之類的高峰期,居然達到了上百萬的日活用戶量!

幸福的煩惱。。。

為什么這么說?因為用戶量上來后,悲劇的事情就發生了。

高峰期每秒的并發請求居然達到了近萬的程度,研發團隊的兄弟們哪里敢怠慢!在這個過程中,先是緊張的各種擴容服務,一臺變兩臺,兩臺變四臺。

然后數據庫主從架構掛上去,讀寫分離是必須的,否則單個數據庫服務器哪能承載那么大的請求!多搞幾個從庫,扛一下大量的讀請求,這樣基本就扛住了。

正準備坐下來喝口茶、松口氣,更加悲劇的事情就發生了。

在這個過程中,那些兄弟經常會發現高峰期,系統的某個功能頁面,突然就整個hang死了,就是沒法再響應任何請求!所有用戶刷新這個頁面全部都是無法響應!

這是為什么呢?原因很簡單啊!一個服務A的實例里,專門調用服務B的那個線程池里的線程,總共可能就幾十個。每個線程調用服務B都會卡住5秒鐘。

那如果每秒鐘過來幾百個請求這個服務實例呢?一下子那個線程池里的線程就全部hang死了,沒法再響應任何請求了。

大家來看看下面這張圖,再直觀的感受一下這個無助的過程!

這個時候咋辦?兄弟們只能祭出程序員最古老的法寶,重啟機器!

遇到頁面刷不出來,只能重啟機器,相當于短暫的初始化了一下機器內的資源。

然后接著運行一段時間,又卡死,再次重啟!真是令人崩潰啊!用戶們的體驗是極差的,老板的心情是憤怒的!

畫外音:

其實這個問題本身不大,但如果對Spring Cloud沒有高并發場景的真實經驗,確實可能會跟這幫兄弟一樣,搞出些莫名其妙的問題。

比如這個公司,明明應該去優化服務接口性能,結果硬是調大了超時時間。結果導致并發量高了,對那個服務的調用直接hang死,系統的核心頁面刷不出來,影響用戶體驗了,這怪誰呢?

五、追本溯源,治標治本

沒法子了,那幫兄弟們只能找人求助。下面就是作者全程指導他們完成系統優化的過程。

第一步

關鍵點,優化圖中核心服務B的性能。互聯網公司,核心業務邏輯,面向C端用戶高并發的請求,不要用上百行的大SQL,多表關聯,那樣單表幾百萬行數據量的話,會導致一下執行好幾秒。

其實最佳的方式,就是對數據庫就執行簡單的單表查詢和更新,然后復雜的業務邏輯全部放在java系統中來執行,比如一些關聯,或者是計算之類的工作。

這一步干完了之后,那個核心服務B的響應速度就已經優化成幾十毫秒了,是不是很開心?從幾秒變成了幾十毫秒!

第二步

那個超時的時間,也就是上面那段ribbon和hystrix的超時時間設置。

奉勸各位同學,不要因為系統接口的性能過差而懶惰,搞成幾秒甚至幾十秒的超時,一般超時定義在1秒以內,是比較通用以及合理的。

為什么這么說?

因為一個接口,理論的最佳響應速度應該在200ms以內,或者慢點的接口就幾百毫秒。

如果一個接口響應時間達到1秒+,建議考慮用緩存、索引、NoSQL等各種你能想到的技術手段,優化一下性能。

否則你要是胡亂設置超時時間是幾秒,甚至幾十秒,萬一下游服務偶然出了點問題響應時間長了點呢?那你這個線程池里的線程立馬全部卡死!

這兩步解決之后,其實系統表現就正常了,核心服務B響應速度很快,而且超時時間也在1秒以內,不會出現hystrix線程池頻繁卡死的情況了。

第三步

事兒還沒完,你要真覺得兩步就搞定了,那還是經驗不足。

如果你要是超時時間設置成了1秒,如果就是因為偶然發生的網絡抖動,導致接口某次調用就是在1.5秒呢?這個是經常發生的,因為網絡的問題,接口調用偶然超時。

所以此時配合著超時時間,一般都會設置一個合理的重試,如下所示:

設置這段重試之后,Spring Cloud中的Feign + Ribbon的組合,在進行服務調用的時候,如果發現某臺機器超時請求失敗,會自動重試這臺機器,如果還是不行會換另外一臺機器重試。

這樣由于偶爾的網絡請求造成的超時,不也可以通過自動重試避免了?

第四步

其實事兒還沒完,如果把重試參數配置了,結果你居然就放手了,那還是沒對人家負責任啊!

你的系統架構中,只要涉及到了重試,那么必須上接口的冪等性保障機制。

否則的話,試想一下,你要是對一個接口重試了好幾次,結果人家重復插入了多條數據,該怎么辦呢?

其實冪等性保證本身并不復雜,根據業務來,常見的方案:

  • 可以在數據庫里建一個唯一索引,插入數據的時候如果唯一索引沖突了就不會插入重復數據
  • 或者是通過redis里放一個唯一id值,然后每次要插入數據,都通過redis判斷一下,那個值如果已經存在了,那么就不要插入重復數據了。

類似這樣的方案還有一些。總之,要保證一個接口被多次調用的時候,不能插入重復的數據。

六、總結全文,回眸再看

有圖有真相!老規矩,最后給大家上一張圖,最終優化后的系統表現大概是長下面這樣子的。

責任編輯:姜華 來源: 今日頭條
相關推薦

2023-09-26 00:37:38

Spring微服務框架

2014-03-26 10:00:06

RailsRails性能

2025-09-08 00:00:00

并發模塊并發性能異步編程

2024-03-12 10:44:42

2025-03-05 00:00:00

RTKRedux開發

2021-03-24 10:25:24

優化VUE性能

2020-07-21 15:40:55

NginxJava服務器

2022-09-21 17:43:29

Kafka底層網絡

2023-01-12 08:24:45

ZookeeperZK服務器

2015-08-13 10:29:12

面試面試官

2021-05-08 08:35:33

Webpack前端性能

2020-11-03 07:00:15

性能優化程序員

2021-06-29 11:05:25

MySQLCPU數據庫

2021-04-20 10:20:27

Dubbo網絡通信通信協議

2017-12-13 13:09:36

NginxWeb應用

2011-07-01 10:11:39

2021-08-02 08:34:20

React性能優化

2022-02-11 19:06:29

MySQL索引面試官

2022-09-27 18:19:32

Java數據結構

2020-09-26 22:04:32

數據安全傳輸HTTPSHTTP 協議
點贊
收藏

51CTO技術棧公眾號

中文字幕久久精品| 亚州男人的天堂| 三区四区电影在线观看| 97久久精品| 精品一区二区在线观看| 亚洲欧美成人在线| 欧美黑人在线观看| 亚洲综合精品国产一区二区三区| 久久精品亚洲成在人线av网址| 亚洲欧洲日韩在线| 国产精品美女www爽爽爽视频| 国产精品久久不卡| 91超碰在线| 国产精品一区免费视频| 久久久精品久久| 亚洲免费一级视频| 大地资源中文在线观看免费版| 1024成人| 亚洲第一国产精品| 国产小视频免费| 国内精品久久久久久久久久久 | 国产精品夜间视频香蕉| 国产伦精品一区二区三区妓女| 深夜国产在线播放| 国产.欧美.日韩| 欧美国产极速在线| 一卡二卡三卡四卡五卡| 自拍亚洲图区| 丁香另类激情小说| 国内偷自视频区视频综合 | 99久久精品费精品国产一区二区| 欧美成人四级hd版| 久久久久亚洲av无码麻豆| 黑人巨大精品| 国产欧美精品一区二区三区四区| 国产精品∨欧美精品v日韩精品| 中文字幕5566| 中文字幕区一区二区三| 亚洲成人一区在线| 九色91国产| 中文字幕在线欧美| 成人免费a**址| 在线观看不卡一区| 中国一区二区三区| 亚洲福利在线观看视频| 亚洲深夜激情| 在线免费看av不卡| 香蕉视频xxxx| av日韩久久| 亚洲综合在线观看视频| 久久精品国产精品国产精品污 | 伊人精品一区二区三区| 五月开心六月丁香综合色啪| 欧美成人精品1314www| www.99热这里只有精品| 九色在线播放| 国内精品写真在线观看| 91成人国产在线观看| 亚欧洲乱码视频| 久久精品免视看国产成人| 精品福利视频导航| 亚洲综合视频一区| 黄色片一区二区| 天堂av在线一区| 亚洲色图制服诱惑| 欧美优质美女网站| 亚洲激情一区二区三区| av中文字幕第一页| 国产一区二区三区不卡在线观看 | 日韩一区和二区| 欧美成人三级在线视频| 91jq激情在线观看| 精品二区三区线观看| 99999精品视频| av片哪里在线观看| 一区二区三区日韩欧美| 欧美福利一区二区三区| 国产一区二区三区中文字幕 | 女人天堂av手机在线| 在线免费观看黄| 成人动漫在线一区| 国产精品一区二区3区| 伊人网站在线观看| 国产激情一区二区三区| 国产精品视频成人| 国产农村妇女毛片精品| 久久精品30| 欧美精品18videosex性欧美| 成人做爰视频网站| 国产精品欧美三级在线观看| 精品不卡在线视频| 国产欧美一区二| 日本免费久久| 激情懂色av一区av二区av| 成人羞羞国产免费网站| av影院在线免费观看| 欧美日韩国产一区二区| 91午夜在线观看| 成人在线播放免费观看| 国产精品亲子伦对白| 欧美精品一区二区视频| 五月婷婷在线观看| 亚洲va欧美va国产va天堂影院| 少妇高潮流白浆| 久久综合网导航| 中文字幕一区二区三区精华液| 免费一区二区三区在在线视频| 后进极品白嫩翘臀在线视频| 国产人成一区二区三区影院| 国产性生活免费视频| 日韩电影大全网站| 日韩精品一区在线观看| 色黄视频免费看| 中文字幕亚洲影视| 国产亚洲欧美日韩美女| 四虎永久免费在线观看| 91成人免费| 欧美精品亚州精品| 国产日韩在线免费观看| 蜜臀av性久久久久蜜臀aⅴ流畅| 国产精品第一区| 中文字幕乱码在线观看| a在线播放不卡| 免费成人av网站| 伊人手机在线| 欧美日韩久久久久久| 国产精品自拍首页| 欧美一区二区三区免费视| 免费人成视频在线播放| 亚洲大片精品免费| 久久久久久97| av av片在线看| 综合av第一页| 色播五月综合网| 高清国产一区二区三区四区五区| 欧美日产国产精品| 巨胸大乳www视频免费观看| 亚洲传媒在线| 午夜精品一区二区三区在线视频| 色播视频在线播放| 丝袜国产日韩另类美女| 极品日韩久久| 91亚洲精选| 一本色道久久加勒比精品| 一区二区三区免费播放| 精品一区在线| www.亚洲人.com| 精品人妻在线播放| 久久激情中文| 欧美日韩国产免费一区二区三区 | 欧美韩国日本不卡| www.欧美日本| 日韩欧美中文字幕在线视频| 亚洲国语精品自产拍在线观看| 成人免费毛片日本片视频| 中文字幕乱码亚洲无线精品一区 | 激情视频在线播放| 亚洲欧美日本日韩| 成人字幕网zmw| 日韩在线视频观看免费| 国产精品日日摸夜夜摸av| 免费男同深夜夜行网站 | 亚洲欧美日韩第一区| 精品成人av一区二区在线播放| 日韩va欧美va亚洲va久久| 91在线视频一区| 性猛交富婆╳xxx乱大交天津| 99国产欧美久久久精品| 国产黄页在线观看| 视频一区欧美| 国产精品久久久久久久久久久不卡| 精品99又大又爽又硬少妇毛片| 一本色道久久加勒比精品| 一本在线免费视频| 中文一区在线| 日本精品一区二区| 黑人极品ⅴideos精品欧美棵| 在线观看网站黄不卡| 99久久久无码国产精品不卡| aa亚洲婷婷| 91精品网站| 国产乱子伦三级在线播放| 亚洲成人精品一区二区| 美女又爽又黄视频毛茸茸| 久久久国产亚洲精品| 亚洲国产精品一区二区第一页 | 精品视频1区2区| 黄色国产在线观看| 日本欧美韩国一区三区| 精品欧美一区二区久久久伦| 中文字幕人成乱码在线观看| 日韩欧美中文一区| 国产微拍精品一区| 国产精品视频线看| 免费大片在线观看| 香蕉视频官网在线观看日本一区二区| 国产高清精品一区二区| 成人无遮挡免费网站视频在线观看| 日韩欧美高清dvd碟片| 国产又大又黄又粗| 99re热这里只有精品视频| 九热视频在线观看| 精品成av人一区二区三区| 日本一本a高清免费不卡| 午夜在线视频观看| 欧美亚洲一区二区在线| 久久久久成人片免费观看蜜芽| 久久久久久日产精品| 男人用嘴添女人下身免费视频| 沈樵精品国产成av片| 超碰97网站| av影院在线| 自拍偷拍亚洲在线| 香蕉视频成人在线| 欧美一级国产精品| 国产精品无码一区| 图片区小说区国产精品视频| 国产成人免费在线观看视频| 91亚洲精品久久久蜜桃网站| 中文字幕乱码在线人视频| 欧美jjzz| 国产一区免费| 一区二区电影免费观看| 精品少妇一区二区30p| 亚洲精品视频网| 欧美性感一区二区三区| 午夜精品三级久久久有码| 亚洲精品国产无天堂网2021| 国产综合精品久久久久成人av| 久久精品免费看| 亚洲小说欧美另类激情| 亚洲91网站| 国产日韩精品入口| 日韩123区| 美女性感视频久久久| 尤物在线视频| 国产亚洲福利一区| 欧洲综合视频| 欧美高清视频一二三区| 青春草免费视频| 99精品黄色片免费大全| 国产精品99精品无码视亚| 国产精品尤物| 99在线精品免费视频| 久久草在线视频| 97久草视频| 欧美精品三级在线| 444亚洲人体| 久久伊人久久| 91精品国产高清久久久久久91裸体| 中文字幕综合| 91精品网站| 好吊妞视频这里有精品| 国产精品久久久久久久久借妻 | 国产黄色片在线观看| 精品视频在线播放色网色视频| 中文字幕在线播放不卡| 日本久久电影网| 精品久久久久av| 久久av最新网址| 不要播放器的av网站| 欧美aaa在线| 五月激情婷婷在线| 国产主播一区| 日韩av一区二区三区在线| 97久久中文字幕| 亚洲一区二区三区在线视频| 视频一区视频二区欧美| 国产欧美在线一区二区| 麻豆一区二区| 欧美色欧美亚洲另类七区| 欧美一区二区三| 一区二区三区国产福利| 欧美精品首页| 波多野结衣激情| 国产一区亚洲| 韩国日本在线视频| 国内精品亚洲| 国产精品一区二区免费在线观看| 亚洲女同在线| 五月天激情播播| 成人动漫中文字幕| 亚洲一区二区自偷自拍| av资源网一区| caopeng视频| 亚洲另类在线制服丝袜| 神马久久久久久久久久久| 国产精品传媒入口麻豆| 欧美成人国产精品高潮| 天天色天天操综合| 久久久久亚洲视频| 欧美色播在线播放| 国产一级淫片免费| 亚洲黄色小视频| 国产成人综合欧美精品久久| 精品视频一区二区不卡| 亚洲男女视频在线观看| 国产亚洲精品成人av久久ww| 2024短剧网剧在线观看| 欧美一区二区三区艳史| 国产va免费精品观看精品| 久久久久久久久久久一区| 欧美oldwomenvideos| 亚洲人成网站在线观看播放| 欧美日韩一视频区二区| 亚洲人成无码www久久久| 国产成人精品三级麻豆| 亚洲欧美日本一区| 亚洲女人****多毛耸耸8| 波多野结衣mp4| 亚洲加勒比久久88色综合 | 午夜精品www| 91成人福利社区| 欧美在线视频一区二区三区| 欧美区国产区| 超碰成人在线播放| 久久综合色综合88| 亚洲午夜福利在线观看| 一区二区三区精品视频在线| 在线免费av片| 亚洲图片欧洲图片av| 九色porny视频在线观看| 欧美做受高潮电影o| 日本免费久久| 好看的日韩精品| 欧美午夜电影在线观看| 亚洲va在线va天堂va偷拍| 欧美激情综合五月色丁香| 亚洲伊人成人网| 精品卡一卡二卡三卡四在线| 黄在线免费看| 国产剧情久久久久久| 精品国产乱码久久久久久蜜坠欲下| 少妇无码av无码专区在线观看| 国产精品一级二级三级| 51精品免费网站| 亚洲国产成人高清精品| 国产毛片毛片毛片毛片| 深夜福利91大全| 在线中文字幕视频观看| 国产主播精品在线| 三上亚洲一区二区| 中文精品无码中文字幕无码专区| 久久精品72免费观看| 亚洲不卡的av| 欧美丰满一区二区免费视频 | 亚洲综合在线五月| 中国一级黄色录像| yjizz视频网站在线播放| 国产电影一区二区三区| 精品欧美一区二区久久久| 粉嫩av亚洲一区二区图片| 亚洲国产成人精品综合99| 欧美一区二区日韩| 天堂中文字幕在线| 一区二区在线免费视频| 欧美电影免费观看高清完整| 欧美精品一区二区三区四区五区| 噜噜噜久久亚洲精品国产品小说| 99久久久久久久久久| 91久久线看在观草草青青| 爱久久·www| 91精品中文在线| 欧美日韩三级| 中文字幕一区三区久久女搜查官| 精品人伦一区二区三区蜜桃网站| 欧美xxx.com| 欧美第一黄网免费网站| 成人看片黄a免费看视频| 国产极品尤物在线| 久久久国产午夜精品| 中文字幕在线观看1| 不用播放器成人网| 一呦二呦三呦精品国产| 国产精品国产精品国产专区蜜臀ah | 亚洲欧洲一区| 日韩av在线看免费观看| 欧美区在线观看| 爽爽爽在线观看| 中文字幕午夜精品一区二区三区| 精品国产一二区| 日韩欧美国产成人| 精品国产白色丝袜高跟鞋| 高清不卡日本v二区在线| 久久综合狠狠| 看免费黄色录像| 国产视频丨精品|在线观看| 国产精品伦一区二区| 六月婷婷久久| 久久99久久精品欧美| 亚洲一区欧美在线| 色偷偷av一区二区三区乱| 动漫av一区| 国产无套粉嫩白浆内谢的出处| 亚洲免费资源在线播放| 免费一级在线观看| av一区二区在线看| 男人的j进女人的j一区| 国产精彩视频在线| 日韩在线观看网站|