美文网首页
rdis lua脚本

rdis lua脚本

作者: 我要尝鲜 | 来源:发表于2018-07-22 21:17 被阅读0次

    redis服务器在启动时,会对内嵌的lua环境执行一系列修改操作,从而确保内嵌的lua环境可以满足redis在功能性、安全性等方面的需要。
    redis服务器专门使用一个伪客户端来执行lua脚本中包含的redis命令。
    redis使用脚本字典来保存所有被EVAL命令执行过,或者被SCRIPT LOAD命令在如果的lua脚本,这些脚本可以用于实现SCRIPT EXISTS命令,以及实现脚本赋值功能。
    EVAL命令为客户端驶入的脚本在lua环境呢中定义一个函数,并通过调用这个函数来执行脚本。
    EVALSHA命令通过直接调用lua环境中已定义的函数来执行脚本。
    SCRIPT FLUSH命令会清空服务器lua_scripts字典中保存的脚本,并重置lua环境。
    SCRIPT EXISTS命令接受一个或多个SHA1校验和为参数,并通过检查lua_scripts字典来确认校验和对应的脚本是否存在。
    SCRIPT LOAD命令接受一个lua脚本作为参数,为该脚本在lua环境中创建函数,并将脚本保存到lua_scripts字典中。
    服务器在执行脚本之前,会为lua环境设置一个超时处理钩子,当脚本出现超时运行情况时,客户端可以通过向服务器发送SCRIPT KILL命令来让钩子停止正在执行的脚本。

    相关文章

      网友评论

          本文标题:rdis lua脚本

          本文链接:https://www.haomeiwen.com/subject/fvyrmftx.html