亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

redis是一個單線程的架構(gòu),所有的操作全部都在一個主線程中完成。所以一旦Redis發(fā)生阻塞,那將是一場噩夢。接下來,我們就來看下對于Redis發(fā)生阻塞問題。如何排查以及解決。

Redis數(shù)據(jù)結(jié)構(gòu)或API使用不合理

存在大對象且對大對象進行復(fù)雜的較高的命令

1、對一個有千萬個元素的hash執(zhí)行hgetall操作, 或del操作.類似的這種操作都會造成Redis阻塞

2、對于這種大對象可以采用redis-cli -h {host} -p {port} bigkeys 來查看。但是該命令只能查詢某類型中的其中最大的一個key。如果你想查詢多個??梢圆捎眯薷膔edis-cli源代碼的方式(Redis的源代碼是C)。如果不想修 改源代碼的話也可以使用scan來完成。

對于Scan命令需要注意。該命令只能掃描單臺Redis上的數(shù)據(jù)。如果你是一個集群,需要每臺機器執(zhí)行一遍。但是如果你使用開源的客戶端的話(比如:JAVA的Lettuce客戶端)就已經(jīng)幫你把scan命令實現(xiàn)為可以掃描整個集群了。

3、然后對大對象進行拆分。具體拆分要視業(yè)務(wù)而定了。

Redis的CPU使用率接近100%

1、從機同步主機數(shù)據(jù)。從機接受到rdb文件后從磁盤加載數(shù)據(jù)

2、主從持久化數(shù)據(jù)。

3、將cpu使用率達到100%,有可能是真實業(yè)務(wù)訪問量確實很大。單臺Redis達到每秒處理6萬+的請求。這個時候就只能做水平擴展了

4、如果Redis每秒操作數(shù)只有幾百,或者幾千,且cpu還是很高的話就有可能使用了高算法復(fù)雜度的命令。例如hgetall。還有一種可能是內(nèi)存的過度優(yōu)化導(dǎo)致。這種情況目前暫時沒有遇到,但也納入考慮范圍。

Cpu競爭

1、Redis是一個CPU密集型的應(yīng)用,不適合和其他CPU密集的服務(wù)部署在一起。

2、在生產(chǎn)環(huán)境中,我們一臺服務(wù)器的配置是32核邏輯cpu, 256GB內(nèi)存。每臺機器如果只部署一臺Redis比較浪費。所以可能會一臺機器部署多個Redis。通常會將Redis進程綁定到CPU上。但是在生成RDB文件或者AOF持久話時,就會產(chǎn)生子進程。這樣子進程與父進程會產(chǎn)生CPU競爭。所以當開啟持久化或者主節(jié)點。不建議綁定CPU

內(nèi)存交換

Redis是一個內(nèi)存型數(shù)據(jù)庫,所有數(shù)據(jù)全部放在內(nèi)存中。所以強烈建議不開啟內(nèi)存交換

網(wǎng)絡(luò)問題

主從同步網(wǎng)絡(luò)延遲較大的話,導(dǎo)致從機經(jīng)常斷線重連。如果斷線時間久了。導(dǎo)致從機再次連接上主機時會全量同步,這時主機,從機都會收到影響

分享到:
標簽:阻塞 Redis
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運動步數(shù)有氧達人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定