一 redis 的扩展应用 lua
redis加载lua脚本文件
① 调试lua脚本
redis-cli 通过管道 --pipe 快速导入数据到redis中
② 预加载方式
1、'错误'方式
2、'正确'方式
++++++++++ "案例讲解" ++++++++++
③ 一次性加载
执行'命令':
redis-cli -a '密码' --eval Lua脚本路径 'key [key …]' , 'arg [arg …]'
如:redis-cli -a 123456 --eval ./wzj.lua name , wzj lisi 1
注意:
1、'–eval' 是选项,'而不是'redis命令模式中的"eval"
2、脚本路径后 '紧跟' key [key …],相比命令行模式,'少了numkeys'这个'key数量值'
3、key [key …] 和 arg [arg …] 之间的" , ",英文'逗号前后'必须有'空格',否则死活'报错'
二 注意事项
④ 全局变量 使用local局部变量
⑤ 脚本缓存
⑥ 纯函数脚本
备注: 像在redis的lua脚本中执行'os.time()会报错','不支持os类库'
⑦ 最大执行时间
1)lua脚本'不宜'编写一些过于'复杂耗时'的逻辑,保证'lua脚本的效率',不要'影响其它客户端'
2)务必保证lua脚本的'健壮性',因为lua脚本'执行异常时',已经执行的逻辑是'不会回滚'的
⑧ 管道上下文中的EVALSHA
⑨ redis中可使用的lua库
⑩ redis-cli执行lua脚本