redis使用lua脚本

@Configuration
@Data
public class RedisConfiguration {
    @Bean
    public RedisScript redisRestoreScript() {
        DefaultRedisScript redisScript = new DefaultRedisScript<>();
        redisScript.setScriptSource(new ResourceScriptSource(new ClassPathResource("restore_redis_script.lua")));
        redisScript.setResultType(List.class);
        return redisScript;
    }
}

lua脚本

local key   = KEYS[1]
local value = KEYS[2]
local ttl   = KEYS[3]
local ret = {}

local ok = redis.call('setnx', key, value)
if ok == 1 then
    redis.call('expire', key, ttl)
    table.insert(ret,1)
else
    table.insert(ret,0)
end

return ret
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容