Redis 脚本及其应用

参考:http://www.runoob.com/redis/redis-scripting.htmlhtml

 

Redis 脚本使用 Lua 解释器来执行脚本。 Reids 2.6 版本经过内嵌支持 Lua 环境。执行脚本的经常使用命令为 EVALredis

语法

Eval 命令的基本语法以下:缓存

redis 127.0.0.1:6379> EVAL script numkeys key [key ...] arg [arg ...]

实例

如下实例演示了 redis 脚本工做过程:lua

redis 127.0.0.1:6379> EVAL "return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}" 2 key1 key2 first second 1) "key1" 2) "key2" 3) "first" 4) "second"

上面这一串代码大概是什么意思呢? 第一个参数的字符串就是script,也就是lua脚本。2表示keys的个数,KEYS[1] 就是 username的占位符, KEYS[2]就是spa

age的占位符,ARGV[1]就是jack的占位符,ARGV[2]就是20的占位符,,以此类推,,,因此最后的结果应该就是:{return username age jack 20} 是不htm

是有点像C#中的占位符:{0}呢??? blog

 

具体应用请见该文章:https://www.cnblogs.com/huangxincheng/p/6230129.htmlip

Redis 脚本命令

下表列出了 redis 脚本经常使用命令:字符串

 

序号 命令及描述
1 EVAL script numkeys key [key ...] arg [arg ...] 
执行 Lua 脚本。
2 EVALSHA sha1 numkeys key [key ...] arg [arg ...] 
执行 Lua 脚本。
3 SCRIPT EXISTS script [script ...] 
查看指定的脚本是否已经被保存在缓存当中。
4 SCRIPT FLUSH 
从脚本缓存中移除全部脚本。
5 SCRIPT KILL 
杀死当前正在运行的 Lua 脚本。
6 SCRIPT LOAD script 将脚本 script 添加到脚本缓存中,但并不当即执行这个脚本。
相关文章
相关标签/搜索