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

線上Redis一直報(bào)連接超時(shí)該如何解決

 更新時(shí)間:2023年08月10日 09:05:01   作者:我是小趴菜  
這篇文章主要為大家詳細(xì)介紹了項(xiàng)目開(kāi)發(fā)時(shí)如果出現(xiàn)線上Redis一直報(bào)連接超時(shí)的問(wèn)題該如何解決,文中的示例代碼簡(jiǎn)潔易懂,需要的小伙伴可以借鑒一下

大家好,我是小趴菜,這一天過(guò)的是真令人頭大呀,本來(lái)是接手一個(gè)同事維護(hù)的老項(xiàng)目就已經(jīng)頭疼的不行了,結(jié)果現(xiàn)在有大量的用戶(hù)反映應(yīng)線上服務(wù)不可用。

沒(méi)辦法,只能硬著頭皮上了,我打開(kāi)了服務(wù)器上的日志,就發(fā)現(xiàn)大量的錯(cuò)誤日志,報(bào)的都是 redis的 Connection reset by peer錯(cuò)誤,我也不知道是什么意思,只能打開(kāi)百度翻譯下,翻譯才知道這是重置連接的意思,很納悶,為什么redis會(huì)重置連接,后面找了點(diǎn)資料,說(shuō)是有以下幾個(gè)原因?qū)е碌?/p>

  • 1:服務(wù)器的并發(fā)連接數(shù)太多,超出了服務(wù)器的承載量,所以服務(wù)器會(huì)關(guān)閉一些連接
  • 2:redis的TimeOut設(shè)置的太短

沒(méi)辦法一個(gè)一個(gè)的排查了

首先看了下項(xiàng)目配置,rdis使用的lettuce相關(guān)的線程池,但是設(shè)置了最大連接數(shù)有1000,那是不是有可能這個(gè)原因?qū)е碌哪兀?/p>

redis:
  host: 127.0.0.1
  port: 6379
  password: 
  database: 0
  timeout: 20000
  lettuce:
    # 關(guān)閉超時(shí)時(shí)間
    shutdown-timeout: 1000
    pool:
      # 連接池最大連接數(shù)(使用負(fù)值表示沒(méi)有限制)
      max-active: 1000
      # 連接池中最大空閑連接
      max-idle: 200
      # 連接池中最大阻塞等待時(shí)間(使用負(fù)值標(biāo)識(shí)沒(méi)有限制)
      max-wait: 3000
      # 連接池中的最小空閑連接
      min-idle: 20

也只能試試了,將最大連接數(shù)調(diào)低,但是最后發(fā)現(xiàn)沒(méi)有解決這個(gè)問(wèn)題,所以第一點(diǎn)我們可以排除了

所以現(xiàn)在只能看下是不是超時(shí)時(shí)間太短,但是我就在想,為什么會(huì)有這么多連接超時(shí)。

在這里我真的是想扇自己的心都有,一定要仔細(xì)看日志,一定要仔細(xì)看日志,一定要仔細(xì)看日志

在日志中已經(jīng)很清楚的打印出了具體的方法了,進(jìn)入這個(gè)對(duì)應(yīng)的方法才知道,這個(gè)方法有將所有地市的數(shù)據(jù)封裝成一個(gè)列表,然后存儲(chǔ)到redis中,然后后續(xù)直接從這個(gè)redis中查詢(xún)出來(lái)。

可問(wèn)題就是這個(gè)地市的數(shù)據(jù)太多了,有幾萬(wàn)條,估計(jì)是前同事為了省事就直接一股腦的全放到一個(gè)key中了。那么這時(shí)候這個(gè)key就是個(gè)大key

這時(shí)候很多線程來(lái)查詢(xún)這個(gè)key,導(dǎo)致查詢(xún)的時(shí)間太久了,也就一直報(bào)連接超時(shí)了。 先不管,先把這個(gè)問(wèn)題解決先,既然數(shù)據(jù)多,那我就分頁(yè)查詢(xún)數(shù)據(jù)庫(kù),我就不用redis了。加了索引其實(shí)查詢(xún)也很快。

發(fā)布上線之后觀察了一段時(shí)間,發(fā)現(xiàn)再也沒(méi)有這個(gè)問(wèn)題了。所以可以肯定就是因?yàn)檫@個(gè)大key的原因才導(dǎo)致的

思考

因?yàn)楫?dāng)時(shí)用戶(hù)并發(fā)量較高,導(dǎo)致redis的連接數(shù)被占滿(mǎn),后續(xù)有大量的用戶(hù)來(lái)申請(qǐng)redis連接,導(dǎo)致有些連接被強(qiáng)制關(guān)閉,也因?yàn)椴樵?xún)的是一個(gè)大key,所以導(dǎo)致線程的redis一直報(bào)連接超時(shí)

所以在使用redis做緩存時(shí)候一定要仔細(xì)小心,不能存儲(chǔ)大key,你可以將key進(jìn)行查分,或者是分頁(yè)查詢(xún)。

到此這篇關(guān)于線上Redis一直報(bào)連接超時(shí)該如何解決的文章就介紹到這了,更多相關(guān)Redis連接超時(shí)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 從一個(gè)小需求感受Redis的獨(dú)特魅力(需求設(shè)計(jì))

    從一個(gè)小需求感受Redis的獨(dú)特魅力(需求設(shè)計(jì))

    Redis在實(shí)際應(yīng)用中使用的非常廣泛,本篇文章就從一個(gè)簡(jiǎn)單的需求說(shuō)起,為你講述一個(gè)需求是如何從頭到尾開(kāi)始做的,又是如何一步步完善的
    2019-12-12
  • Redis?存儲(chǔ)對(duì)象信息用?Hash?和String的區(qū)別

    Redis?存儲(chǔ)對(duì)象信息用?Hash?和String的區(qū)別

    這篇文章主要介紹了Redis存儲(chǔ)對(duì)象信息用Hash和String的區(qū)別,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • gem install redis報(bào)錯(cuò)的解決方案

    gem install redis報(bào)錯(cuò)的解決方案

    今天小編就為大家分享一篇關(guān)于gem install redis報(bào)錯(cuò)的解決方案,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01
  • 深入理解Redis 內(nèi)存管理

    深入理解Redis 內(nèi)存管理

    本文主要介紹了深入理解Redis 內(nèi)存管理,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-02-02
  • 詳解redis端口號(hào)

    詳解redis端口號(hào)

    在本篇內(nèi)容中我們給大家整理了關(guān)于redis端口號(hào)的相關(guān)知識(shí)點(diǎn)內(nèi)容,有興趣的朋友們學(xué)習(xí)下。
    2019-06-06
  • 使用Spring?Boot實(shí)現(xiàn)Redis鍵過(guò)期回調(diào)功能示例詳解

    使用Spring?Boot實(shí)現(xiàn)Redis鍵過(guò)期回調(diào)功能示例詳解

    這篇文章主要介紹了使用Spring?Boot實(shí)現(xiàn)Redis鍵過(guò)期回調(diào)功能,就是一個(gè)實(shí)現(xiàn)Redis鍵過(guò)期回調(diào)功能的Spring?Boot應(yīng)用的示例,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • Redis數(shù)據(jù)庫(kù)原理深入刨析

    Redis數(shù)據(jù)庫(kù)原理深入刨析

    在之前的文章我們介紹過(guò),Redis服務(wù)器在啟動(dòng)之初,會(huì)初始化RedisServer的實(shí)例,在這個(gè)實(shí)例中存在很多重要的屬性結(jié)構(gòu),同理本篇博客中介紹的數(shù)據(jù)庫(kù)實(shí)現(xiàn)原理也會(huì)和其中的某些屬性相關(guān),我們繼續(xù)看一下吧
    2022-11-11
  • 關(guān)于Redis解決Session共享問(wèn)題

    關(guān)于Redis解決Session共享問(wèn)題

    這篇文章主要介紹了Redis解決Session共享問(wèn)題,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-07-07
  • redis緩存一致性延時(shí)雙刪代碼實(shí)現(xiàn)方式

    redis緩存一致性延時(shí)雙刪代碼實(shí)現(xiàn)方式

    這篇文章主要介紹了redis緩存一致性延時(shí)雙刪代碼實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 基于redis集群設(shè)置密碼的實(shí)例

    基于redis集群設(shè)置密碼的實(shí)例

    今天小編就為大家分享一篇基于redis集群設(shè)置密碼的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05

最新評(píng)論

微山县| 遵化市| 普格县| 新干县| 克拉玛依市| 宁都县| 定日县| 广河县| 惠安县| 海林市| 临汾市| 枣强县| 新和县| 宜兰县| 郁南县| 通化县| 阿巴嘎旗| 曲沃县| 龙口市| 隆安县| 万年县| 新安县| 无极县| 富民县| 凤阳县| 湟源县| 漯河市| 阿克| 沙洋县| 宜丰县| 珲春市| 贺兰县| 汉寿县| 馆陶县| 博白县| 巴彦淖尔市| 芜湖县| 嵩明县| 平罗县| 运城市| 博兴县|