redis在分布式應用中占據著越來越重要的地位,短短的幾萬行代碼,實現(xiàn)了一個高性能的數(shù)據存儲服務。
查看redis源碼,發(fā)現(xiàn)在某些情況下redis會出現(xiàn)超時的狀況,如下:
1. 網絡。Redis的處理與網絡息息相關,如果網絡出現(xiàn)閃斷則容易發(fā)生redis超時的狀況。如果出現(xiàn)這種狀況首先應查看redis機器網絡帶寬信息,判斷是否有閃斷情況發(fā)生。
2. 內存。redis所有的數(shù)據都放在內存里,當物理內存不夠時,linux os會使用swap內存,導致內存交換發(fā)生,這時如果有redis調用命令就會產生redis超時。這里可以通過調整/proc/sys/vm/swappiness參數(shù),來設置物理內存使用超過多少就會進行swap。
最大緩存設置
示例:maxmemory 100mb?
單位:mb,gb。
默認為0,沒有指定最大緩存,如果有新的數(shù)據添加,超過最大內存,則會使redis崩潰,所以一點要設置。
設置maxmemory之后,配合的要設置緩存數(shù)據回收策略。
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END