Lua + Redis 实战代码

复制代码
--[[

    luarocks install luasocket         module 'socket' not found

    https://github.com/nrk/redis-lua

    最历害的是,用redis 去跑lua,分布式锁,限流,

]]--

local redis = require("redis");


local config={host="127.0.0.1",port=6379};
local client = redis.connect(config);


--项目中使用的原子操作
https://blog.csdn.net/kuishao1314aa/article/details/120367618
--eval "local val=redis.call('GET',KEYS[1]);if _G.tonumber(val)>0 then redis.call('DECR',KEYS[1]) end;return true" 1 test-key


local val=client.get('test-key');--1
if _G.tonumber(val) <1 then

    print("没有库存,抢完了");
    os.exit();
else
    client.decr('test-key');
end




--[[
info = client:info();

for k,v in pairs(info.clients) do
    print(k,v);
 end
 ]]--

print(client:get("test-key"));
--print(cliREADMEent:del("test-key"));

--print(client:set("test-key",456));

print(client:incr("test-key"));

print(client:get("test-key"));

for k,v in pairs(redis.commands) do
    print(k,v);
end
相关推荐
88号技师5 分钟前
【2025年1区SCI】最新信号分解方法-JMD的参数优化:15种适应度函数-matlab代码
开发语言·matlab·故障诊断·信号分解
zmzb01035 分钟前
C++课后习题训练记录Day44
开发语言·c++
smile_Iris6 分钟前
Day 30 函数定义与参数
开发语言·python
老华带你飞9 分钟前
医院挂号|基于Java医院挂号管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot
豐儀麟阁贵13 分钟前
9.6使用正则表达式
java·开发语言·数据库·mysql
kgduu14 分钟前
go ethreum之Trie
开发语言·后端·golang
Aurorar0rua15 分钟前
C Primer Plus 14.17 复习题
c语言·开发语言·数据结构
拾忆,想起35 分钟前
Dubbo序列化异常终结指南:从精准诊断到根治与防御
开发语言·前端·微服务·架构·php·dubbo·safari
waves浪游37 分钟前
进程控制(中)
linux·运维·服务器·开发语言·c++
摇滚侠40 分钟前
2025最新 SpringCloud 教程,熔断规则-熔断策略-异常比例,笔记45
redis·笔记·spring cloud