Linux下平滑启动应用,尝试使用kill -HUP命令吧
下载后得到三份文件,有1.Nginx WEB入门简介&安装、2.Nginx WEB日志分析&日志切割、3Nginx Tomcat负载均衡三个word文档,看起来对小白还是很友好。

任意打开一份文档,文件中有准确的导航栏,可以快速定位到需要的页面,很是友好,对于开发及运维人员也有帮助。我这里也无私的分享给大家(获取方式请看文章末尾)。

文中提到,如果需要平滑的启动Nginx的话,可以使用kill -HUP `cat /var/run/nginx.pid`或nginx -s reload命令来操作。对于大部分运维人员,可能使用较多是后者,在改变系统配置之后,采用nginx -t命令来检查文件的错误,如果无误后,使用nginx -s reload来重载程序,使改变生效。
那kill -HUP `cat /var/run/nginx.pid`是什么呢?其中/var/run/nginx.pid(根据自己的实际情况更改,比如我的文件位于
/usr/local/nginx/nginx.pid)是Nginx主进程运行的PID文件,该文件中存放了Nginx运行时的PID。
PID,即Process Identification,指操作系统里进程的识别号,也就是进程的标识符号。操作系统里每打开一个进程都会创建一个进程ID,即PID。我们使用top命令时也可以看到每个进程的PID。

我们在使用ps -ef | grep nginx查看得到的PID号与前者一致。

kill -HUP pid:如果想要更改配置而不需停止并重新启动服务,则使用该命令。在对配置文件作必要的更改后,发出该命令以动态更新服务配置。举一反三,我们将此方法用于下面的情景中:
重启httpd服务:
# ps -A | grep httpd | grep -v grep | awk ‘{ print $1}‘ | xargs -L 1 kill -HUP
ps 和 grep 命令用来在所有的进程中搜索 httpd(并且忽略用来搜索 httpd 进程的 grep 进程)。接下来,awk 只显示输出结果中的进程 ID,并将它传递给 xargs。然后,xargs 命令接受每个进程 ID(因为使用了 -L 1 以便一次提取一行内容),并使用kill -HUP 向相应的进程发送一个挂起信号。
如:重启sshd服务
更改/etc/ssh/sshd_config,将里面的Port改为新端口,比如28,然后 kill -HUP `cat /var/run/sshd.pid` 就行了。
现在连接自己不会断,因为kill -HUP `cat /var/run/sshd.pid` 只是HUP监听的那个,已经建立的连接(不同的 pid)不会断。 然后你在现有账号下面exit,再用新的端口登陆就可以了。