在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