EVAL
命令。 创新互联公司专注骨干网络服务器租用十年,服务更有保障!服务器租用,雅安服务器托管 成都服务器租用,成都服务器托管,骨干网络带宽,享受低延迟,高速访问。灵活、实现低成本的共享或公网数据中心高速带宽的专属高性能服务器。
Lua 是一种轻量小巧、开源的脚本语言,用标准 C语言编写。其设计目的就是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。它被广泛的应用于:游戏开发、独立应用脚本、Web 应用脚本、扩展和数据库插件等。
Redis 使用
EVAL
命令编写 lua 脚本,其语法格式如下:
127.0.0.1:6379> EVAL script numkeys key [key ...] arg [arg ...]
参数说明如下:
举一个简单的示例:在 Redis 客户端使用 Lua 语言编写“Hello World”并将其输出。
127.0.0.1:6379> EVAL "return 'Hello world'" 0 "Hello world"
虽然 Redis 官网提供了丰富指令集(200多个),但是在某些特定的领域需要对指令进行扩充,因此 Redis 允许我们使用 Lua 语言以自定义的方式编写脚本命令,这满足了一部分用户的需求。Redis 服务器会以单线程、原子性的方式执行 Lua 脚本,保证 Lua 脚本在处理过程中不会被其他请求中断。
使用 Lua 脚本有如下好处:
命令 | 说明 |
---|---|
EVAL script numkeys key [key ...] arg [arg ...] | 使用 Lua 解释器执行脚本。 |
EVALSHA sha1 numkeys key [key ...] arg [arg ...] | Lua 解释器根据 sha1 校验码执行脚本。 |
SCRIPT EXISTS script [script ...] | 查看指定的脚本是否保存在于缓存当中。 |
SCRIPT FLUSH | 从脚本缓存中移除所有脚本。 |
SCRIPT KILL | 杀死当前正在运行的 Lua 脚本。 |
SCRIPT LOAD script | 将脚本 script 添加到脚本缓存中,但不马上执行这个脚本。 |
EVAL 命令使用示例:
redis 127.0.0.1:6379> EVAL "return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}" 2 key1 key2 first second 1) "key1" 2) "key2" 3) "first" 4) "second"
在线练习工具:https://try.redis.io/
查看更多 Redis 命令:https://redis.io/commands
分享文章:RedisLua脚本
分享链接:http://www.mswzjz.cn/qtweb/news19/85119.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能