最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

客戶端設(shè)置超時時間真的很重要

 更新時間:2018年12月06日 11:55:04   作者:Sam哥哥  
今天小編就為大家分享一篇關(guān)于客戶端設(shè)置超時時間真的很重要,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

概述

一條慢SQL導(dǎo)致購物車服務(wù)無法使用的解決方案一文中,提到了客戶端調(diào)用購物車服務(wù)的時候,超時了。如果當(dāng)時客戶端沒有設(shè)置超時時間的話,會在客戶端中產(chǎn)生級聯(lián)故障。先用一張圖來說明一下。

聚合層除了調(diào)用購物車微服務(wù),還調(diào)用了營銷系統(tǒng)微服務(wù)。如果購物車服務(wù)的接口響應(yīng)時間很慢,而客戶端聚合層調(diào)用購物車服務(wù)時,又沒有設(shè)置超時時間,那么將占有大量的連接,如果請求購物車服務(wù)的請求量比較大,瞬間就會把連接占用完,直接導(dǎo)致聚合層調(diào)用營銷系統(tǒng)時,需要阻塞住等待獲取連接,這樣的話,整個小程序的很多功能就都用不了了。

從這里我們可以看到,最終小程序端會整體響應(yīng)很慢,因?yàn)樗{(diào)用了聚合層,而聚合層又調(diào)用了一個性能很差的購物車服務(wù)。產(chǎn)生級聯(lián)故障了,小程序端和聚合層都在等待中耗盡了資源,這個是非??膳碌氖虑椤?/p>

設(shè)置超時時間

聚合層是使用了Spring Cloud Ribbon,我們可以設(shè)置一下Ribbon的超時時間。具體的可以參看SpringCloud Edgware.SR3版本中Ribbon的timeout設(shè)置方法

ribbon:
  ReadTimeout: 2000
  ConnectTimeout: 2000

這樣的話,聚合層調(diào)用購物車服務(wù),如果兩秒鐘沒有返回結(jié)果,則超時報(bào)錯。這樣做有兩個好處。

  • 快速失敗,釋放資源;
  • 聚合層調(diào)用購物車雖然失敗了,但是聚合層調(diào)用營銷系統(tǒng)則仍然可以進(jìn)行,不受影響。小程序端使用到營銷系統(tǒng)接口的功能也能繼續(xù)使用;

知識擴(kuò)展

客戶端保持彈性真心很重要,因此像客戶端中的

  • 負(fù)載均衡模式
  • 斷路器模式
  • 后備模式
  • 艙壁模式

都是需要了解的。要做一個彈性客戶端,可以借助一些工具,像NetflixHystrix組件就非常不錯,并且已經(jīng)被Spring Cloud集成進(jìn)去了,使用起來也比較簡單。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

相關(guān)文章

  • Java實(shí)現(xiàn)讀取及生成Excel文件的方法

    Java實(shí)現(xiàn)讀取及生成Excel文件的方法

    這篇文章主要介紹了Java實(shí)現(xiàn)讀取及生成Excel文件的方法,結(jié)合實(shí)例形式分析了java通過引入第三方j(luò)ar包poi-3.0.1-FINAL-20070705.jar實(shí)現(xiàn)針對Excel文件的讀取及生成功能,需要的朋友可以參考下
    2017-12-12
  • java?-jar啟動服務(wù)并輸出日志常用命令小結(jié)

    java?-jar啟動服務(wù)并輸出日志常用命令小結(jié)

    這篇文章主要介紹了在Linux環(huán)境下運(yùn)行JAR包的幾種方法,包括在命令結(jié)尾添加&使其在后臺運(yùn)行,使用nohup使程序不掛斷運(yùn)行,以及將日志輸出到指定文件或丟棄,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-03-03
  • RocketMQ的push消費(fèi)方式實(shí)現(xiàn)示例

    RocketMQ的push消費(fèi)方式實(shí)現(xiàn)示例

    這篇文章主要為大家介紹了RocketMQ的push消費(fèi)方式實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪<BR>
    2022-08-08
  • Java Restful API的攔截詳解

    Java Restful API的攔截詳解

    這篇文章主要介紹了Java 調(diào)用Restful API接口的攔截,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2021-09-09
  • IDEA使用Mybatis插件 MyBatisCodeHelper-Pro的圖文教程

    IDEA使用Mybatis插件 MyBatisCodeHelper-Pro的圖文教程

    這篇文章主要介紹了IDEA使用Mybatis插件 MyBatisCodeHelper-Pro的教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • java equals和==的區(qū)別詳解

    java equals和==的區(qū)別詳解

    這篇文章主要介紹了java equals和==的區(qū)別詳解的相關(guān)資料,需要的朋友可以參考下
    2016-10-10
  • 打卡每日10道面試題——JVM篇

    打卡每日10道面試題——JVM篇

    總結(jié)了JVM一些經(jīng)典面試題,分享出我自己的解題思路,希望對大家有幫助,有哪里你覺得不正確的話,歡迎指出,后續(xù)有空會更新,希望大家能夠喜歡
    2021-06-06
  • java使用RandomAccessFile類基于指針讀寫文件實(shí)例代碼

    java使用RandomAccessFile類基于指針讀寫文件實(shí)例代碼

    這篇文章主要介紹了java使用RandomAccessFile類基于指針讀寫文件實(shí)例代碼,具有一定參考價值,需要的朋友可以了解下。
    2017-10-10
  • Java中數(shù)組容器(ArrayList)設(shè)的計(jì)與實(shí)現(xiàn)

    Java中數(shù)組容器(ArrayList)設(shè)的計(jì)與實(shí)現(xiàn)

    本篇文章主要跟大家介紹我們最常使用的一種容器ArrayList、Vector的原理,并且自己使用Java實(shí)現(xiàn)自己的數(shù)組容器MyArrayList,讓自己寫的容器能像ArrayList那樣工作,感興趣的可以了解一下
    2022-07-07
  • struts2自定義攔截器的示例代碼

    struts2自定義攔截器的示例代碼

    本篇文章主要介紹了struts2自定義攔截器的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08

最新評論

桐梓县| 和顺县| 天等县| 江川县| 宜宾市| 汕头市| 凌源市| 禹州市| 蒙自县| 乐安县| 临夏市| 类乌齐县| 明溪县| 中西区| 贵阳市| 南开区| 沈丘县| 南阳市| 锡林郭勒盟| 新沂市| 繁昌县| 武鸣县| 晋宁县| 河北省| 金湖县| 牡丹江市| 乌鲁木齐县| 芦山县| 略阳县| 河间市| 睢宁县| 满城县| 棋牌| 军事| 炉霍县| 周宁县| 新乐市| 崇信县| 习水县| 二连浩特市| 梨树县|