Hi,All
我在nginx 的log 阶段收集nginx 的日志到 influxdb, 使用的是lua-resty-logger-socket 的udp, 目前的QPS 已经是2万多了,
由于目前使用的是单节点influxdb,性能上面后期会有瓶颈,我打算使用 分片,目前先做一个随机的分片,下面是代码:
问题是: 如果我使用下面的方式, 将host做为动态变量传递到 logger.initted() 会不会有什么隐患呢, 我目前的压测没有发现明显的性能问题和报错。
请使用过此功能的大神或者作者帮帮忙,急着为后续的日志分片的做设计,谢谢!
local host_list = { '173.16.11.43','174.16.11.94', '172.16.1.123'}
local x = random.number(1,3)
local host_1 = host_list[x]
if not logger.initted() then
local ok, err = logger.init{
host = host_1, -- lua-resty-logger-socket的wiki写的是固定的ip, 如果是动态的ip,会否影响性能或者得到一些不稳定的现象呢? 当然对于每个独立的请求是固定的ip。
port = 8911,
flush_limit = 1234,
drop_limit = 5678,
periodic_flush = 2 ,
sock_type = 'udp' ,
}
if not ok then
ngx.log(ngx.ERR, "failed to initialize the logger: ",
err)
return
end
end