Compiling Nginx on production. How to do it without down time.
francis at daoine.org
Fri Oct 12 21:27:23 UTC 2012
On Fri, Oct 12, 2012 at 01:29:14PM -0700, Quintin Par wrote:
> Thanks for this. This looks a bit complicated.
> I’d assume that “make install” will overwrite the executable and that will
> ensure everything. Or should I just go ahead and do service nginx restart
"make install" will replace the binary. It won't run the new binary.
After replacing the binary, you'll want to do something like
kill -USR2 $(cat logs/nginx.pid)
And after testing that things are working as expected, then
kill -WINCH $(cat logs/nginx.pid.oldbin)
followed eventually by
kill -QUIT $(cat logs/nginx.pid.oldbin)
The "control.html" page has more details about how to handle problems.
"service nginx restart" probably doesn't do that sequence, and so probably
won't be 0-downtime. But you can use your test system to find a sequence
that works well enough for you.
Francis Daly francis at daoine.org
More information about the nginx