• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    redis的一個詭異問題排查

    來源:懂視網 責編:小采 時間:2020-11-09 13:10:33
    文檔

    redis的一個詭異問題排查

    redis的一個詭異問題排查:前段時間,由于線上redis服務器的內存使用率達到了機器總內存的50%以上,導致內存數據的dump持久化一直失敗。擴展到多臺redis后,應用系統訪問redis時, 在業務量較少時,時不時會出現以下異常,當業務量較大,redis訪問頻率很高時,卻不會發生這個異常 ,一
    推薦度:
    導讀redis的一個詭異問題排查:前段時間,由于線上redis服務器的內存使用率達到了機器總內存的50%以上,導致內存數據的dump持久化一直失敗。擴展到多臺redis后,應用系統訪問redis時, 在業務量較少時,時不時會出現以下異常,當業務量較大,redis訪問頻率很高時,卻不會發生這個異常 ,一

    前段時間,由于線上redis服務器的內存使用率達到了機器總內存的50%以上,導致內存數據的dump持久化一直失敗。擴展到多臺redis后,應用系統訪問redis時, 在業務量較少時,時不時會出現以下異常,當業務量較大,redis訪問頻率很高時,卻不會發生這個異常 ,一

    前段時間,由于線上redis服務器的內存使用率達到了機器總內存的50%以上,導致內存數據的dump持久化一直失敗。擴展到多臺redis后,應用系統訪問redis時,在業務量較少時,時不時會出現以下異常,當業務量較大,redis訪問頻率很高時,卻不會發生這個異常,一時覺得很詭異。

    redis.clients.jedis.exceptions.JedisConnectionException:?It?seems?like?server?has?closed?the?connection.
    at?redis.clients.util.RedisInputStream.readLine(RedisInputStream.java:90)?~[jedis-2.1.0.jar:na]
    at?redis.clients.jedis.Protocol.processInteger(Protocol.java:110)?~[jedis-2.1.0.jar:na]
    at?redis.clients.jedis.Protocol.process(Protocol.java:70)?~[jedis-2.1.0.jar:na]
    at?redis.clients.jedis.Protocol.read(Protocol.java:131)?~[jedis-2.1.0.jar:na]
    at?redis.clients.jedis.Connection.getIntegerReply(Connection.java:188)?~[jedis-2.1.0.jar:na]
    at?redis.clients.jedis.Jedis.sismember(Jedis.java:1266)?~[jedis-2.1.0.jar:na]

    看提示,應該是服務端主動關閉了連接。查看了新上線的redis服務器的配置,有這么一項:

    # Close the connection after a client is idle for N seconds (0 to disable)
    timeout 120

    這項配置指的是客戶端連接空閑超過多少秒后,服務端主動關閉連接,默認值0表示服務端永遠不主動關閉。而op人員把服務器端的超時時間設置為了120秒。這就解釋了發生這個異常的原因。客戶端使用了一個連接池管理訪問redis的所有連接,這些連接是長連接,當業務量較小時,客戶端部分連接使用率較低,當兩次使用之間的間隔超過120秒時,redis服務端就主動關閉了這個連接,而等客戶端下次再使用這個連接對象時,發現服務端已經關閉了連接,進而報錯。

    解決方案有兩種:

    1. 在redis-cli下直接修改redis 的配置,把timeout改回為0,無需重啟redis即可直接生效。

    2. 修改應用系統代碼,設置連接的最大空閑時長(超出此時長將斷開空閑連接)小于120秒。

    出于改動成本考慮,采用了第一種方案,修改后,報錯不再出現。

    這里有一個問題,為何服務器端主動關閉空閑連接后,客戶端沒有報錯呢,系統依賴的是jedis-2.1.0,這塊需要細看下jedis連接池那塊的實現,jedis連接池主要是基于commons-pool寫的,下來再研究研究,寫一篇文章總結一下。

    (本文已被閱讀18次)

    前段時間,由于線上redis服務器的內存使用率達到了機器總內存的50%以上,導致內存數據的dump持久化一直失敗。擴展到多臺redis后,應用系統訪問redis時,在業務量較少時,時不時會出現以下異常,當業務量較大,redis訪問頻率很高時,卻不會發生這個異常,一時覺得很詭異。 redis.clients.jedis.exceptions.JedisConnectionException:?It?seems?like?server?has?closed?the?connection. at?redis.clients.util.RedisInputStream.readLine(RedisInputStream.java:90)?~[jedis-2.1.0.jar:na] at?redis.clients.jedis.Protocol.processInteger(Protocol.java:110)?~[jedis-2.1.0.jar:na] at?redis.clients.jedis.Protocol.process(Protocol.java:70)?~[jedis-2.1.0.jar:na] at?redis.clients.jedis.Protocol.read(Protocol.java:131)?~[jedis-2.1.0.jar:na] at?redis.clients.jedis.Connection.getIntegerReply(Connection.java:188)?~[jedis-2.1.0.jar:na] at?redis.clients.jedis.Jedis.sismember(Jedis.java:1266)?~[jedis-2.1.0.jar:na] 看提示,應該是服務端主動關閉了連接。查看了新上線的redis服務器的配置,有這么一項: # Close the connection after a client is idle for N seconds (0 to disable) timeout 120 這項配置指的是客戶端連接空閑超過多少秒后,服務端主動關閉連接,默認值0表示服務端永遠不主動關閉。而op人員把服務器端的超時時間設置為了120秒。這就解釋了發生這個異常的原因。客戶端使用了一個連接池管理訪問redis的所有連接,這些連接是長連接,當業務量較小時,客戶端部分連接使用率較低,當兩次使用之間的間隔超過120秒時,redis服務端就主動關閉了這個連接,而等客戶端下次再使用這個連接對象時,發現服務端已經關閉了連接,進而報錯。 解決方案有兩種: 1. 在redis-cli下直接修改redis 的配置,把timeout改回為0,無需重啟redis即可直接生效。 2. 修改應用系統代碼,設置連接的最大空閑時長(超出此時長將斷開空閑連接)小于120秒。 出于改動成本考慮,采用了第一種方案,修改后,報錯不再出現。 這里有一個問題,為何服務器端主動關閉空閑連接后,客戶端沒有報錯呢,系統依賴的是jedis-2.1.0,這塊需要細看下jedis連接池那塊的實現,jedis連接池主要是基于commons-pool寫的,下來再研究研究,寫一篇文章總結一下。 (本文已被閱讀18次)

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    redis的一個詭異問題排查

    redis的一個詭異問題排查:前段時間,由于線上redis服務器的內存使用率達到了機器總內存的50%以上,導致內存數據的dump持久化一直失敗。擴展到多臺redis后,應用系統訪問redis時, 在業務量較少時,時不時會出現以下異常,當業務量較大,redis訪問頻率很高時,卻不會發生這個異常 ,一
    推薦度:
    標簽: 一個 問題 線上
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 久久国产精品免费| 亚洲欧美精品AAAAAA片| 蜜臀av无码人妻精品| 国产短视频精品一区二区三区| 亚州日韩精品专区久久久| 99热都是精品久久久久久| 精品国产午夜理论片不卡| 午夜精品久久影院蜜桃| 国产国拍亚洲精品福利| 国内精品51视频在线观看| 欧美精品黑人粗大免费| 亚洲欧美精品综合中文字幕| 国产精品无打码在线播放| 色综合久久精品中文字幕首页| 国产精品看高国产精品不卡| 亚洲精品国产美女久久久| 日韩蜜芽精品视频在线观看| 国内精品国语自产拍在线观看| 久草视频在线这里精品| 成人精品一区二区三区中文字幕| 亚洲国产成人精品无码区在线观看| 男人的天堂精品国产一区| 国产内地精品毛片视频| 99久久人人爽亚洲精品美女| 久久99国产精品久久99果冻传媒| 国产精品亚洲аv无码播放| 亚洲精品自产拍在线观看| 亚洲国产精品ⅴa在线观看| 欧美精品一二区| 久久免费99精品国产自在现线| 精品国产婷婷久久久| 狠狠精品干练久久久无码中文字幕| 91精品成人免费国产片| 久久99国产精品久久| 亚洲国产精品久久久久| 四虎国产精品免费入口| 51久久夜色精品国产| 国产高清精品在线| 国产精品亚洲综合专区片高清久久久| 黑巨人与欧美精品一区| 免费精品国产自产拍在线观看|