資料庫的數量通過database命令設定或在配置檔案中設定,預設16
讀寫鍵空間時的維護
1、在讀取或寫入乙個鍵時,伺服器會根據鍵是否存在來更新伺服器的鍵命中次數和不命中次數,可以通過info stats命令檢視
2、在讀取乙個鍵值,伺服器會更新鍵的lru屬性
3、如果伺服器在讀取乙個鍵時,如果這個鍵已經過期,會先刪除這個鍵,再繼續餘下操作
4、如果有客戶端對某個鍵進行watch操作,那麼伺服器在對watch的鍵進行修改之後,會對這個鍵標記為臟(dirty),從而讓事務程式注意到這個鍵已經被修改
5、如果伺服器開啟了資料庫通知功能,那麼在鍵被修改之後,伺服器會傳送相應的資料庫通知。
資料庫通知
通知分為鍵空間通知(key-space notification)和鍵事件通知(key-event notification),預設是關閉的,可以通過配置檔案中的notify-keyspace-events開啟,取值如下:
# k 鍵空間通知,以__keyspace@__為字首
# e 鍵事件通知,以__keysevent@__為字首
# g del , expipre , rename 等型別無關的通用命令的通知, …
# $ string命令
# l list命令
# s set命令
# h hash命令
# z 有序集合命令
# x 過期事件(每次key過期時生成)
# e 驅逐事件(當key在記憶體滿了被清除時生成)
# a g$lshzxe的別名,因此」ake」意味著所有的事件
鍵空間通知(key-space notification)
語法:subscriblekeyspace@:key
鍵事件通知(key-event notification)
語法:subscriblekeyevent@:eventtype,比如del,expire
Redis基礎3(redis字典操作)
importredis conn redis.redis host 192.168.131.129 port 6379,password 123456 存值 conn.hset k4 name 123 conn.hset k4 age 66 取值 取單個值 val conn.hget k4 name...
3 Redis的安裝和配置
redis其實是可以安裝在linux和windows的,都是實際應用中肯定是在linux環境下,所以就只記錄在linux下的操作步驟吧 開啟redis官網 上傳完之後我們用xshell連線伺服器,進入到我們所上傳的目錄 然後使用命令 解壓我們上傳的壓縮包 tar zxvf redis 2.8.0.t...
redis系列之 資料庫
當我們在redis資料庫中set乙個kv的時候,這個kv儲存在 如果我們get的時候,又從 get出來。時間複雜度,空間複雜的等等,怎麼優化等等一系列問題。redis伺服器將所有資料庫資訊都儲存在redis.h redisservice結構體中。如下 1 struct redisserver 列了幾...