華為云Redis實(shí)例CPU使用率達(dá)到100%的原因有哪些?
可能原因1:
客戶的業(yè)務(wù)負(fù)載過重,qps過高,導(dǎo)致CPU被用滿。
可能原因2:
使用了keys等消耗資源的命令,這會(huì)導(dǎo)致CPU使用率超高,容易觸發(fā)主備倒換。
例如,使用了keys等消耗資源的命令,導(dǎo)致CPU超高,建議客戶改成scan命令或者禁用keys命令。
可能原因3:
實(shí)例開啟了AOF持久化功能,華為云Redis的AOF持久化一般在以下2種場景執(zhí)行:
Redis的AOF持久化操作比較消耗CPU資源,如果在這種場景下,Redis讀寫業(yè)務(wù)量大,就出現(xiàn)CPU使用率超高的問題。
如果客戶沒有需要用到持久化功能,建議將該功能關(guān)閉(請根據(jù)實(shí)際業(yè)務(wù)慎重操作,關(guān)閉持久化功能會(huì)導(dǎo)致數(shù)據(jù)丟失)。關(guān)閉操作:在實(shí)例詳情頁面,選擇“配置參數(shù)”頁簽,將“appendonly”修改為“no”。
業(yè)務(wù)不怎么繁忙時(shí),固定在每天的凌晨3點(diǎn)進(jìn)行AOF備份。所以容易出現(xiàn)這個(gè)時(shí)間點(diǎn)實(shí)例CPU使用率超高的現(xiàn)象。
業(yè)務(wù)繁忙時(shí),當(dāng)業(yè)務(wù)量達(dá)到一定的程度,會(huì)自動(dòng)觸發(fā)后臺(tái)AOF持久化。