Lua学习笔记

一、Redis使用Lua脚本实例

1.1-示例1

1.用vim编辑器创建01.lua脚本文件

2.编写脚本内容调用redis

redis.call("set","age","30")
local age = redis.call("get","age")
return age

3.调用redis客户端并使用eval命令使用Lua脚本,打印age输出到控制台

D:\soft\redis\Redis-3.2>redis-cli.exe -h 10.200.140.20 -p 36379 -a mymima --eval 01.lua
"30"

1.2-示例2

1.用vim编辑器创建02.lua脚本文件

 2. 编写脚本内容调用redis

local name = redis.call("get",KEYS[1])
local age = redis.call("get",KEYS[2])

if name=="guigui" then
redis.call("set",KEYS[1],ARGV[1])
redis.call("incr",KEYS[2])
end

3.调用redis客户端并使用eval命令使用Lua脚本(带参数)

D:\soft\redis\Redis-3.2>redis-cli.exe -h 10.200.140.20 -p 36379 -a mymima --eval 02.lua name age , shenzhen
(nil)

注意:可以在脚本中用KEYS[1],KEY[2]获取,","后面的sunlin是参数,在脚本中能够使用ARGV[1]和ARGV[2]获得。注:”,"两边的空格不能省略,否则会出错。
4.使用redis管理工具查看redis数据库中的数据

 

1.3-示例3

修改session相关的token信息的ttl

redis.call("EXPIRE",KEYS[1],2592000)
redis.call("set",KEYS[2],ARGV[1]) 
redis.call("EXPIRE",KEYS[2],2592000)

测试:

D:\soft\redis\Redis-3.2>redis-cli.exe -h 10.200.140.20 -p 36379 -a mymima --eval token.lua deviceId token , uuid_DFDFDFDFDF
(nil)

 

 

 

 


参考:https://blog.csdn.net/oGuiGui12345/article/details/89761882

posted on 2016-04-19 14:49  duanxz  阅读(562)  评论(0编辑  收藏  举报