How do we do in production mode if nginx.conf requires to be updated?

I am going to use nginx in production mode.

I normally used nginx -s reload when nginx.config requies to be updated.

But if I call this command several times, I could see strange issue.

As you can see, some nginx processes are in shutting down status.
And also this is error.log file.

image

I assume that only I will see only signal process started message.
What’s the next merge message? why this is happening?

I want to discuss this kind of issue more widely in our community.

Thanks

1 Like

Hello everyone

I finllay find the reason for current issue.

I used timer_event in my nginx sub module.

because nginx won’t let a worker exit while it still has any non-cancelable timers pending.

Actually, nginx is waiting for that timer stops

When you run nginx -s reload, old workers go into graceful shutdown: they stop accepting new work and then wait until all connections are closed and the timer queue is empty. Since you add a periodic timer in init_process(), the old worker keeps at least one future timer scheduled. Unless that timer fires and your handler returns without re-arming, nginx keeps the worker in “shutting down”.

So the process is working strangely

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.