优雅的退出/关闭/重启gunicorn进程

在工作中,会发现gunicorn启动的web服务,无论怎么使用kill -9 进程号都是无法杀死gunicorn,经过我一番百度和谷歌,发现想要删除gunicorn进程其实很简单。

第一步获取Gunicorn进程树:

通过执行如下命令,可以获取Gunicorn进程树:

pstree -ap|grep gunicorn
得到的结果如下

Python
 |   |                       |-grep,14519 --color=auto gunicorn
  |           `-gunicorn,28097 /usr/local/bin/gunicorn query_site.wsgi:application -c ...
  |               |-gunicorn,14226 /usr/local/bin/gunicorn query_site.wsgi:application -c ...
  |               |   |-{gunicorn},14229
  |               |   |-{gunicorn},14230
  |               |   |-{gunicorn},14231
  |               |   |-{gunicorn},14232
  |               |   |-{gunicorn},14233
  |               |   |-{gunicorn},14234
  |               |   |-{gunicorn},14236
  |               |   |-{gunicorn},14237
  |               |   |-{gunicorn},14238
  |               |   |-{gunicorn},14239
  |               |   |-{gunicorn},14240
  |               |   |-{gunicorn},14241
  |               |   |-{gunicorn},14242
  |               |   |-{gunicorn},14243
  |               |   `-{gunicorn},14244
2. 重启Gunicorn任务

Python
kill -HUP 14226
3. 退出Gunicorn任务

Python
kill -9 28097
执行上述命令后,再次执行“pstree -ap|grep gunicorn”,我们很容易发现,除了主进程,其他的Gunicorn进程都已经销毁,并新建了进程(进程ID发生了变化)。

  

猜你喜欢

转载自www.cnblogs.com/hedianzhan/p/9655119.html