-
使用 Redis 命令行界面 (redis-cli
) 连接到 Redis 服务器。
redis-cli
-
现在,让我们使用 SCRIPT LOAD
加载一个 Lua 脚本。我们将使用与上一步中相同的脚本,该脚本将计数器递增指定的量。
SCRIPT LOAD "local current = redis.call('INCRBY', KEYS[1], ARGV[1]); return current"
此命令会将脚本加载到 Redis 服务器的脚本缓存中,并返回脚本的 SHA1 哈希值。你应该看到类似于以下的输出:
"6b1e8dd2999cb08546e74339c0c9489f9f89a84b"
这是脚本的 SHA1 哈希值。记下此哈希值,因为你将在下一步中需要它。确切的哈希值可能会有所不同。
-
现在,让我们加载将键设置为值的脚本,其中键和值都作为参数传递。
SCRIPT LOAD "redis.call('SET', KEYS[1], ARGV[1]); return ARGV[1]"
你应该看到类似于以下的输出:
"a8b2b3648969459a8198262a9166e945e890987c"
同样,记下此哈希值。
-
让我们加载连接作为参数传递的两个字符串并将结果设置为键的脚本。
SCRIPT LOAD "local result = ARGV[1] .. ARGV[2]; redis.call('SET', KEYS[1], result); return result"
你应该看到类似于以下的输出:
"d2a800a974ca96849295220424f9a0664a495345"
也记下此哈希值。
-
你可以使用 SCRIPT EXISTS
命令验证脚本是否已加载。此命令接受一个或多个 SHA1 哈希值作为参数,并返回一个由 0 和 1 组成的数组,其中 1 表示已加载具有相应哈希值的脚本,而 0 表示未加载。
例如,要检查我们加载的第一个脚本是否仍然加载,请使用以下命令,将哈希值替换为你从步骤 2 中获得的哈希值:
SCRIPT EXISTS 6b1e8dd2999cb08546e74339c0c9489f9f89a84b
输出:
1) (integer) 1
这表示已加载该脚本。
如果你尝试检查未加载的脚本:
SCRIPT EXISTS 0000000000000000000000000000000000000000
输出:
1) (integer) 0
这表示未加载该脚本。
-
退出 redis-cli
。这对于记录更改非常重要。
exit