我们正在使用balancer_by_lua动态选择一个后端。我们要确保每个后端都有一个活动连接池。从netstat看来还可以,但是我们要确保保持活动状态,并检测后端池。
是否可以通过某种方式查询内部Nginx状态并列出到所有后端的所有当前池连接?
balancer_by_lua_block {
local balancer = require "ngx.balancer"
host_map = {
['abc'] = '192.168.2.2',
['xyz'] = '192.168.2.3'
}
host = host_map[ngx.var.http_host]
ngx.log(ngx.INFO, "Connecting to upstream: ", ngx.var.http_host, "=", host)
local ok, err = balancer.set_current_peer(host, 443)
if not ok then
ngx.log(ngx.ERR, "failed to set the current peer: ", err)
return ngx.exit(500)
end
}
keepalive 500;
}