lua 指令碼功能是 reids 2.6 版本的最大亮點, 通過內嵌對 lua 環境的支援, redis 解決了長久以來不能高效地處理 cas (check-and-set)命令的缺點, 並且可以通過組合使用多個命令, 輕鬆實現以前很難實現或者不能高效實現的模式。
命令不多,就下面這幾個:
- eval
- evalsha
- script load - script exists
- script flush
- script kill
需求:實現乙個訪問頻率控制,某個ip在短時間內頻繁訪問頁面,需要記錄並檢測出來,就可以通過lua指令碼高效的實現。
redis如何使用luascript呢?
直接上**實菜吧,寫乙個模糊查詢key的方法
//////判斷是否存在包含keypattern的key
/// ///
///public
bool existpatternkey(string
keypattern)
);if(cacheresult.isnull)
return ((string)cacheresult).length > 0
; }
stackexchange.redis模糊查詢
2 3redis持久化rdb和aof的對比
總結 1.rdb 優點rdb對redis對外提供的讀寫服務,影響非常小,可以讓redis保持高效能 rdb特別適合做冷備份 缺點 容易丟失資料,因為按時時間間隔儲存資料 rdb的間隔太長,生成的rdb檔案太大了,redis本身的效能一定有影響的 2.aof 優點aof可以更好的保護資料不丟失 非常適...
redis實戰 Redis命令之列表
列表的主要優點在於它可以包含多個字串值,使得使用者可以將資料集中在同乙個地方。redis允許使用者從序列的兩端推入或者彈出元素,獲取列表元素,以及執行各種常見的列表操作。命令用例 描述注意 rpush rpush key value value 從右端推入乙個或多個值 多個值用空格隔開 lpush ...
redis實戰 Redis命令之集合
redis的集合以無序的方式儲存多個各不相同的元素,使用者可以快速對集合執行新增元素 移除元素以及檢查元素是否存在於集合中的操作。命令用例 描述注意 sadd sadd key item item 將乙個或多個元素插入到集合中,並返回被新增元素當中原本不存在於集合中的數量 srem srem key...