在Redis中使用Lua
来源:互联网 发布:河北秦淮数据有限公司 编辑:程序博客网 时间:2024/05/18 03:01
在Redis中使用Lua
一.Lua是什么?
Lua是一门脚本语言,它是由C语言实现的。其设计目标是做为嵌入式程序移植到其他应用程序。Redis将Lua做为脚本语言可以帮助开发者定制自己的Redis命令。
二. 数据类型
Lua支持strings(字符串),numbers(数值),tables(表格),booleans(布尔)
三. 在Redis中使用Lua
3.1 eval
3.2 evalsha
四. Redis中使用lua的好处
(1)lua脚本式在redis中原子执行的,在执行过程中不会插入其他命令
(2)lua脚本可以帮助开发和运维人员创造出自己定制的命令,并可以将这些命令常驻在Redis内存中,实现复用的效果。
(3)lua脚本可以将多条命令一次性打包,有效的减少网络开销。
五. Redis如何管理Lua脚本
5.1 将lua脚本加载到内存中script load “$(文件名)”
例如:script load $(test.lua)
返回:a25260dd66ce02462c5b5231 727b2f7772c0bcc5
5.2 检查lua脚本是否已经加载到内存中script exists
例如:script exists a25260dd66ce02462c5b5231 727b2f7772c0bcc5
返回:1
5.3 清除Redis内存中已经加载的所有lua脚本script flush
5.4 杀掉正在执行的lua脚本script kill|shutdown save
如果一个脚本比较耗时,会阻塞了redis。直到脚本执行完毕或则外部干预将其结束。
Redis提供了一个lua-time-limit参数,默认是5秒,它是lua脚本的超时时间,这个超时时间仅仅是当lua脚本超过lua-time-limit后,向其他调用放发送busy信号,并不会停止服务端和客户端的脚本执行。客户端会收到“Busy Redis is busy running a script”错误,并提示使用script kill和shutdownnosave命令来杀掉这个busy的脚本
阅读全文
0 0
- 在Redis中使用Lua
- Redis中lua脚本使用
- 在redis中使用lua脚本让你的灵活性提高5个逼格
- 在BCB中使用Lua
- 在BCB中使用Lua
- 在BCB中使用Lua
- 在BCB中使用Lua
- 在BCB中使用Lua
- 在BCB中使用Lua
- 在BCB中使用Lua
- 在BCB中使用Lua
- 在BCB中使用Lua
- 在BCB中使用Lua
- 在Cocoa中使用Lua
- 在C++中使用Lua
- 在C++中使用Lua
- redis使用Lua脚本
- nginx+lua+redis使用
- CEF完整嵌入DUI窗体(二) --在程序中初始化Cef
- Andioid_手动 滑动图片
- 购买装备(“盛大游戏杯”第15届上海大学程序设计联赛夏季赛暨上海高校金马五校赛
- 初识javaDate与字符串
- 利用ffmpeg将pcma和h264合成MP4
- 在Redis中使用Lua
- vb.net 教程 4-5 文件操作 File 2
- GIT 常用命令
- Android studio 中输入法中文提示不跟随光标的解决方案
- 安装Hyperledger Fabric的先决条件
- 相对路径和绝对路径
- 润乾报表批量打印在tomcat7中设置
- java异常体系详解
- 强化学习on-policy跟off-policy的区别