Hi 大家好
最近遇到过一个问题,nginx加载一千条以上的server配置时,需要1秒以上。如果这个时候有频繁的配置变更(server级别的最多),目前只能通过nginx -s reload完成,但是nginx -s reload需要fork新进程,对系统的稳定性及用户体验有影响。
所以在考虑是否通过不fork nginx进程的方式实现配置的动态加载。
听春哥的介绍说ngx lua代码能够实现这个需,就是只配置一个server{},一个location{|,一个upstream{},其他的转发请求功能都可以通过lua完成,包括新增server,location等配置。
假设我的配置如下,
server{
listen 8000;
location /test{
return 200;
}
}
server {
listen 8001;
location /test1{
return 201;
}
}
现在想增加一个server配置,请问如何通过lua代码完成呢?(不需要 -s reload,不能fork新进程)
因为刚刚开始接触ngx_lua这一块,希望大家指导一下。