redis配置優化 記一次線上redis問題排查

2021-08-17 21:48:56 字數 1017 閱讀 5231

在通過redis快取進行了一系列的介面效能優化後,大部分介面返回在1ms~200ms間,這都是redis的功勞,但隨著介面redis快取越來越多,新的問題產生了,從redis取資料竟然用了5s = =,通過觀察日誌,並不是每次取資料都是5s,

大部分情況從redis取資料還是很快的不會超過5ms.

1 在檢視**後,發現有些redis的key設計的過長,於是首先重新命名了rediskey儘量減少其長度,但觀察發現這種情況還

是存在,並且觀察日誌,redis取資料耗時長的問題大概隔一段時間才發生

2 檢視redis配置,發現redis初始化執行緒池大小沒有設定= =,需要知道的是redis初始化執行緒大預設是0,在了解redis模式

和伺服器端設定的連數大小後,果斷加上redis初始化執行緒大小.問題解決,如果以後發現這種問題,但檢察初始連線數已配置,可考慮初始連線數是否配置過小.

注意:

redis初始化執行緒數大小是需要根據redis併發數來設定的.

首先確定本專案reids是從主模式,單機配置,和服務端設定的最大連線數為10000,以及綜合考慮redis併發數大小

所以redis初始化連線數大小設定 100,具體redis配置如下:

id="jedispoolconfig"

class="redis.clients.jedis.jedispoolconfig">

name="maxtotal"

value="500" />

name="maxidle"

value="300"/>

name="minidle"

value="100"/>

name="maxwaitmillis"

value="2000" />

name="testonborrow"

value="true"/>

bean>

在配置完連線數後,還可觀察redis目前最大連數,最小連線數,來適當調整redis連線數大小

記一次線上OOM和效能優化

某次周五,發布前一周的伺服器小動盪?上周五,通過grafana監控,線上環境突然出現cpu和記憶體飆公升的情況 既然伺服器在某個時間點出現了高負荷,於是就先去找一開始出現問題的伺服器,去找耗時的服務,例如我當時去找資料庫耗時的服務,由於上週的日誌已經被刷掉,於是我大致描述一下 admin yyyy ...

記一次線上問題排查

這次線上問題來的比較突然,影響也大,用部落格記錄下整個過程,也當作是對這次事故的一次總結歸納。day1 2018年06月21號上午10點,收到運營同事通知,http com api 訪問量劇增,日誌量達到80g 天,而且有上公升趨勢。運營同事讓我們排查,這種訪問是否正常。運營統計訪問量 收到通知後立...

記一次線上快取問題

今天上線專案時,檢視乙個軟體列表,我的介面裡是findall,可是軟體列表裡沒有type欄位沒有出現,後來檢查發現 是線下softmodel裡type欄位沒更新過來,清完線下表快取,並用gii重新生成了下softmodel,然後再次上線。再次檢視線上該軟體列表,還是沒有type欄位,估計第一次檢視的...