[1] == '' and version == false
then
redis.call('SET',keys[1],'1')
redis.call('SET',keys[2],values[2...])
return 1
end
if version == values[1]
then
redis.call('SET',keys[2],values[2])
redis.call('INCR...('get',keys[1])
if values[1] == '' and version == false
then
redis.call('SET',keys[1],'1')
redis.call...")
kvs := make([]redis.KeyAndValue, 0)
kvs = append(kvs, redis.KeyAndValue{"test_version", casVersion.String...这里很多同学可能会问为什么,其实很简单,Redis 是单线程的,倘若 Lua 脚本操作的 key 在不同机器上执行,也就无法保证其执行的原子性了。