Nginx加载Lua脚本lua_shared_dict缓存
创始人
2024-03-03 00:04:38
0

1、介绍

lua_shared_dict缓存是nginx为lua提供的一个多进程共享空间,为了避免多进程修改造成脏数据,lua_shared_dict修改数据是用锁来实现的。这样就会有qps访问瓶颈变小的问题。这是性能缺点。

2、使用

1)首先在nginx.conf里申请一块共享内存空间

http {
...

# 不缓存lua代码,修改lua及时生效,但是每次请求会加载lua代码,牺牲了性能,

# 所以测试阶段开始关掉。默认是开启的。

lua_code_cache off;

# shared_data_d是空间变量名,可以自定义;1m:是空间大小

lua_shared_dict shared_data_d 1m;

server {
location /lua {
            default_type   text/html;
            content_by_lua_file lua/main.lua;
        }

}

}

2)测试代码

local shared_data = ngx.shared.shared_data_d
local i = shared_data:get("count")
if not i then
    i= 1
    shared_data:set("count", i)
    ngx.say("set count ", i, "
")
end
i = shared_data:incr("count", 1)
ngx.say("count=", i , "
")

 代码大意:在shared_data_d内存空间获取count,如果没获取到就设置为1,如果有就加一。

亲测无误!!!

相关内容

热门资讯

海南产经新观察:为“向数图强”... 中新网海口12月23日电 (黄方舟)已经启动全岛封关的海南自贸港,正致力推动公共数据资源开发利用,加...
幼儿园收费划出“制度红线”,严... 大象新闻2025-12-23 17:12:18 2026年1月1日起,幼儿园收费实行目录清单管理,建...
快手就遭到黑灰产攻击谴责违法犯... 针对快手平台上出现违规内容的异常情况,12月23日,南都N视频记者从快手科技方面获悉,公司快手应用的...
调解故事 | 高效化解装修纠纷... 近日,延吉市房地产纠纷人民调解委员会成功调解了一起合同纠纷,切实维护了当事人合法权益。 今年5月,...
宁波女婴医疗纠纷进入司法程序 ... 央广网宁波12月23日消息(记者陈金莲 俞烨)12月23日,记者从宁波市海曙区人民法院了解到,该院已...
被举报打赏网红600余万,国企... 张女士系中国某工程咨询集团有限公司职员,其名下实名手机号注册的抖音账号“xx阳光”在不到两年的时间里...
涉房屋租赁合同纠纷案情:不适租... 租赁企业提供的房屋不适租,承租方有权单方解除合同并主张违约责任。 12月23日,北京第三中级人民法院...
农银人寿广西分公司开展普法宣讲... 为深入贯彻落实宪法宣传教育工作要求,切实增强员工法律意识与风险防范能力,帮助员工妥善化解工作、生活中...
重大毒品犯罪案件证据收集审查判... 重大毒品犯罪案件证据收集审查判断工作指引(浙江省) (浙检发诉三字〔2015〕1号) 来源:为你辩护...
知名拆迁律师联系方式揭秘:为您... 在拆迁过程中,遇到纠纷和难题是常有的事,这时候找一位有名的拆迁律师至关重要。那么,如何获取资深拆迁律...