欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

線上Redis一直報連接超時該如何解決

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

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

沒辦法,只能硬著頭皮上了,我打開了服務器上的日志,就發(fā)現(xiàn)大量的錯誤日志,報的都是 redis的 Connection reset by peer錯誤,我也不知道是什么意思,只能打開百度翻譯下,翻譯才知道這是重置連接的意思,很納悶,為什么redis會重置連接,后面找了點資料,說是有以下幾個原因導致的

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

沒辦法一個一個的排查了

首先看了下項目配置,rdis使用的lettuce相關的線程池,但是設置了最大連接數(shù)有1000,那是不是有可能這個原因導致的呢?

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

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

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

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

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

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

這時候很多線程來查詢這個key,導致查詢的時間太久了,也就一直報連接超時了。 先不管,先把這個問題解決先,既然數(shù)據(jù)多,那我就分頁查詢數(shù)據(jù)庫,我就不用redis了。加了索引其實查詢也很快。

發(fā)布上線之后觀察了一段時間,發(fā)現(xiàn)再也沒有這個問題了。所以可以肯定就是因為這個大key的原因才導致的

思考

因為當時用戶并發(fā)量較高,導致redis的連接數(shù)被占滿,后續(xù)有大量的用戶來申請redis連接,導致有些連接被強制關閉,也因為查詢的是一個大key,所以導致線程的redis一直報連接超時

所以在使用redis做緩存時候一定要仔細小心,不能存儲大key,你可以將key進行查分,或者是分頁查詢。

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

相關文章

  • Redis集群利用Redisson實現(xiàn)分布式鎖方式

    Redis集群利用Redisson實現(xiàn)分布式鎖方式

    這篇文章主要介紹了Redis集群利用Redisson實現(xiàn)分布式鎖方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Linux下redis密碼和遠程連接方式

    Linux下redis密碼和遠程連接方式

    這篇文章主要介紹了Linux下redis密碼和遠程連接方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 使用Redis實現(xiàn)秒殺功能的簡單方法

    使用Redis實現(xiàn)秒殺功能的簡單方法

    這篇文章主要給大家介紹了關于使用Redis實現(xiàn)秒殺功能的簡單方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • Redis主從復制操作和配置詳情

    Redis主從復制操作和配置詳情

    這篇文章主要介紹了Redis主從復制操作和配置詳情,文章通過圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Redis之Redisson原理詳解

    Redis之Redisson原理詳解

    Redisson 顧名思義,Redis 的兒子,本質(zhì)上還是 Redis 加鎖,不過是對 Redis 做了很多封裝,它不僅提供了一系列的分布式的 Java 常用對象,還提供了許多分布式服務,本文將詳細給大家介紹Redisson原理
    2023-06-06
  • redis發(fā)布訂閱_動力節(jié)點Java學院整理

    redis發(fā)布訂閱_動力節(jié)點Java學院整理

    這篇文章主要介紹了redis發(fā)布訂閱,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Redis數(shù)據(jù)結構之listpack和quicklist使用學習

    Redis數(shù)據(jù)結構之listpack和quicklist使用學習

    這篇文章主要為大家介紹了Redis數(shù)據(jù)結構之listpack和quicklist的使用學習,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • Redis事務為什么不支持回滾

    Redis事務為什么不支持回滾

    事務是關系型數(shù)據(jù)庫的特征之一,那么作為 Nosql 的代表 Redis 中有事務嗎?如果有,那么 Redis 當中的事務又是否具備關系型數(shù)據(jù)庫的 ACID 四大特性,本文就來詳細介紹一下
    2021-08-08
  • 關于Redis緩存問題及解決

    關于Redis緩存問題及解決

    這篇文章主要介紹了關于Redis緩存問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • CentOS Linux系統(tǒng)下安裝Redis過程和配置參數(shù)說明

    CentOS Linux系統(tǒng)下安裝Redis過程和配置參數(shù)說明

    這篇文章主要介紹了CentOS Linux系統(tǒng)下安裝Redis過程和配置參數(shù)說明,需要的朋友可以參考下
    2014-10-10

最新評論