githunb上下载lua-resty-limit-traffic
解压到/usr/openv/servers/lualib/restylimit目录下。 servers 为openresty安装目录.
/usr/openv/servers/nginx/conf/lua目录
新建limit.lua
local limit_req = require "resty.limit.req"
local redis = require "resty.redis"
local instance = redis.new();
instance.connect(instance,'127.0.0.1','6379')
local rate =tonumber(instance:get("limitrate"))
local burst =tonumber(instance:get("limitburst"))
--local rate=3 这里如果不用redis 可以直接使用rate=3进行赋值
--local burst =10
local error_status = 503
local nodelay = false
local lim, err = limit_req.new("limit_req_store", rate, burst)
if not lim then
ngx.exit(error_status)
end
local key = ngx.var.binary_remote_addr
local delay, err = lim:incoming(key, true)
if not