redis - redis执行lua脚本

117 阅读1分钟

世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。

关于redis对lua脚本的支持,这里简单描述一下
在这里插入图片描述
上图是执行效果
过程是这样的:

 1. 执行eval命令
 2. lua环境将 "return 'hello world'" 封装成 f_... 的脚本函数
 3. 然后执行返回

不仅如此,lua脚本还可以通过redis.call和redis.pcall执行redis命令
过程如下

1. lua通过执行redis.call将redis命令传到伪客户端
2. 伪客户端将命令传给命令执行器
3. 命令执行器处理后将结果返回给伪客户端
4. 伪客户端将执行结果返回给lua环境的redis.call

更多细节,关注公众号
在这里插入图片描述