KeySpaceNotification 鍵空間通知

KeySpaceNotification 鍵空間通知

1、Redis鍵淘汰機(jī)制簡(jiǎn)介

在Redis中,內(nèi)存的大小是有限的,所以為了防止內(nèi)存飽和,需要實(shí)現(xiàn)某種鍵淘汰策略。主要有兩種方法,一種是當(dāng)Redis內(nèi)存不足時(shí)所采用的內(nèi)存釋放策略。第二種是對(duì)過期鍵進(jìn)行刪除的策略,也可以在某種程度上釋放內(nèi)存。

1.1 Redis鍵過期淘汰的策略

當(dāng)需要進(jìn)行內(nèi)存釋放的時(shí)候,需要用某種策略對(duì)保存的的對(duì)象進(jìn)行刪除。Redis有六種策略:

volatile-lru:從已設(shè)置過期時(shí)間的數(shù)據(jù)集(server.db[i].expires)中挑選最近最少使用的數(shù)據(jù)淘汰

volatile-ttl:從已設(shè)置過期時(shí)間的數(shù)據(jù)集中挑選將要過期的數(shù)據(jù)淘汰

volatile-random:從已設(shè)置過期時(shí)間的數(shù)據(jù)集中任意選擇數(shù)據(jù)淘汰

allkeys-lru:從數(shù)據(jù)集(server.db[i].dict)中挑選最近最少使用的數(shù)據(jù)淘汰

allkeys-random:從數(shù)據(jù)集(server.db[i].dict)中任意選擇數(shù)據(jù)淘汰

no-enviction(驅(qū)逐):禁止驅(qū)逐數(shù)據(jù)

2、KeySpaceNotification功能

2.1 開啟KeySpaceNotification功能

默認(rèn)情況下,該功能是關(guān)閉的,因?yàn)樵摴δ芟牟糠諧PU。開啟該功能需要修改redis的配置文件。

當(dāng)前需要修改的配置的機(jī)器有兩臺(tái):Redis1、Redis2

配置文件的路徑均為: /etc/redis

clip_image002

圖1 Redis1中需要修改的配置文件

clip_image004

圖2 Redis2中需要修改的配置文件

2.2 修改配置文件

1. 使用vi 6379.conf 進(jìn)入文件;

clip_image006

圖3 使用vi指令進(jìn)入配置文件

2. 輸入/keyspace,回車后定位到該功能開啟部分;