在通過redis快取進行了一系列的介面效能優化後,大部分介面返回在1ms~200ms間,這都是redis的功勞,但隨著介面redis快取越來越多,新的問題產生了,從redis取資料竟然用了5s = =,通過觀察日誌,並不是每次取資料都是5s,
大部分情況從redis取資料還是很快的不會超過5ms.
1 在檢視**後,發現有些redis的key設計的過長,於是首先重新命名了rediskey儘量減少其長度,但觀察發現這種情況還
是存在,並且觀察日誌,redis取資料耗時長的問題大概隔一段時間才發生
2 檢視redis配置,發現redis初始化執行緒池大小沒有設定= =,需要知道的是redis初始化執行緒大預設是0,在了解redis模式
和伺服器端設定的連數大小後,果斷加上redis初始化執行緒大小.問題解決,如果以後發現這種問題,但檢察初始連線數已配置,可考慮初始連線數是否配置過小.
注意:首先確定本專案reids是從主模式,單機配置,和服務端設定的最大連線數為10000,以及綜合考慮redis併發數大小redis初始化執行緒數大小是需要根據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欄位,估計第一次檢視的...