redis的配置文件位於安裝目錄下,文件名爲redis.conf
執行命令:vim redis.conf,進入redis配置文件
配置redis
-
bind 127.0.0.1,綁定的主機地址表示默認在本機ip下運行
-
表示redis的默認端口爲:port 6379
-
daemonize no 表示默認不是以守護進程的方式運行
-
timeout 300 表示當客戶端閒置多長時間後鏈接
-
制定在多長時間內有多少次更新操作,以下分別表示900s(15min)內有1個更改,300s(5min)內有10個更改,60s(1min)內有10000個更改
save 900 1
save 300 10
save 60 10000
Redis中的內存維護策略
redis作爲優秀的中間緩存件,時常會有大量的數據,即使採取了集羣部署來動態擴容,也應該即使整理內存,維護系統性能
redis中有兩種解決方案
1.爲數據設置過期時間
expire key time(以秒爲單位)-- 這是常用的方式
setex(String key,int seconds,String value)-- 字符串獨有的方式
- 除了字符串有自己獨有的設置過期時間的方法外。,其他方法都需要依靠expire方法設置過期時間
- 如果沒有設置過期時間,那麼緩存就是永遠不過期
- 如果設置了過期時間,只有又想讓緩存永不過期,使用persist key
2.採用LRU(最近最少使用)算法動態的將不用的數據移除
LRU是一種內存管理的頁面置換算法,
在配置文件中給的lru算法有以下幾種:
- volatile-lru:設置超時時間的數據中刪除最不常用的數據
- allkeys-lru:查詢所有key中最近最不常用的數據進行刪除
- volatile-random :在已經設置了超時時間的數據中隨機刪除
- allkeys-random:查詢所有的key之後隨機刪除
- volatile-ttl:查詢全部設置超時時間的數據,之後排序,將馬上將要過期的數據進行刪除
- noeviction:如果設置爲該屬性,則不會進行刪除操作,如果內存溢出則報錯返回
- volatile-lfu :從所有配置了過期時間的鍵中驅逐使用頻率最少的鍵
- allkeys-lfu:從所有鍵中逐使用頻率最少的鍵