gpt4 book ai didi

linux - Upstart 和 uWSGI,工作进程未退出

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:42:51 24 4
gpt4 key购买 nike

enter image description here

上表的第二列是 pid。

我正在使用 upstart 来守护 uwsgi,upstart 配置文件在这里:

respawn

chdir ${DIR_OF_PROJECT}

script
set -a
. ${DIR_OF_PROJECT}/.env
uwsgi --ini uwsgi.ini --plugin python3 --master --die-on-term
end script

uwsgi 由脚本部分的最后一行启动。

当 uwsgi 死亡时,uwsgi 由 respawn 选项重生。

但问题是当 uwsgi 进程死掉时工作进程没有退出。

例如,如果我运行 sudo kill -9 5419,则 5421、5433、5434、5435、5436 进程不会退出。 (它的例子是进程 5373、5391、5392、5393、5394。)

所以这种情况会在 uwsgi 挂掉时重复出现,然后服务器宕机导致内存不足。

有什么问题?

最佳答案

你试过像这样在 uwsgi.ini 中指定 die-on-term 参数吗:

[uwsgi]
module = wsgi:application

master = true
processes = 5

socket = myapp.sock
chmod-socket = 664
vacuum = true

die-on-term = true

这对我的项目很有用。

您还可以在此处查看分步教程: https://www.digitalocean.com/community/tutorials/how-to-set-up-uwsgi-and-nginx-to-serve-python-apps-on-ubuntu-14-04

关于linux - Upstart 和 uWSGI,工作进程未退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40828109/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com