一、什么是 Lua 脚本
Lua 是一种轻量级的脚本语言。Redis 从 2.6 版本开始内置了对 Lua 的支持,允许我们把一段逻辑写成 Lua 脚本,一次性提交给 Redis 服务器执行。
二、Lua 脚本的作用
Lua 脚本在 Redis 中的主要作用是 将多条命令封装为一个原子操作执行。这意味着脚本中的所有 Redis 命令会在一次执行中完成,不会被其他客户端的命令打断,从而保证数据操作的一致性和完整性。
它常用于以下场景:
- 原子操作:在高并发环境下确保关键业务逻辑不被其他请求干扰,比如秒杀、库存扣减。
- 减少网络开销:客户端只需一次请求即可完成多条命令执行。
- 逻辑复用:在 Redis 端处理逻辑,减少客户端逻辑复杂度。
- 性能提升:执行脚本的效率通常高于多条命令连续执行。