我刚刚通过pip install uwsgi在虚拟环境中pip install uwsgi 。 在我使用的“ini”文件中:
socket = 127.0.0.1:3000 # no pidfile option
运行uwsgi --ini config.ini
但是如何阻止这个uwsgi的实例呢?
uwsgi --stop ...想要一个pid文件。 我不能使用地址:
open("127.0.0.1:3000"): No such file or directory [core/io.c line 505]
而如果杀死 – uwsgi只是自己重生。
ps ax | grep uwsgi 15005 pts/4 S 0:00 /ve/path/bin/uwsgi --ini config.ini 15006 pts/4 S 0:00 /ve/path/bin/uwsgi --ini config.ini 15007 pts/4 S 0:00 /ve/path/bin/uwsgi --ini config.ini killall -s INT /ve/path/bin/uwsgi
这是一个已知的function,你不能终止uwsgi只是杀死。 第二个项目符号: http : //uwsgi-docs.readthedocs.org/en/latest/ThingsToKnow.html
直到uWSGI 2.1,默认情况下,将SIGTERM信号发送到uWSGI意味着“重新加载堆栈”,而惯例是closuresSIGTERM上的应用程序。 要closuresuWSGI,请改用SIGINT或SIGQUIT。 如果你完全不能忍受uWSGI对SIGTERM的不尊重,那么一定要启用die-on-term选项。 幸运的是,这个不好的select已经在uWSGI 2.1中得到了修复
类似于最上面的一个答案,在Ubuntu或Debian中,你可以简单地做sudo killall -9 uwsgi 。 虽然我想知道uwsgi是否有办法阻止自己。