今天我使用pip升级uwsgi和uwsgitop并在Ubuntu上运行vitrualenv。升级后uwsgitop停止报告我运行的4个进程。
我使用以下配置运行uwsgi 2.0.13.1:
[uwsgi]
plugins = python
socket = /tmp/uwsgi.myapp.socket
pythonpath = /srv/myapp
processes = 4
harakiri = 2
max-requests = 2000
callable = app
stats = /tmp/uwsgi.myapp.statsock
# Turn this off for production
catch-exceptions = true
当我对进程进行检查时,我可以看到有5个进程正在运行。 17279,主人和其他4个uwsgi进程由它产生。
(myapp-flask)admin@myapp:~$ ps ax | grep wsgi
17279 ? S 0:00 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/myapp.ini --daemonize /var/log/uwsgi/app/myapp.log
17284 ? S 0:01 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/myapp.ini --daemonize /var/log/uwsgi/app/myapp.log
17285 ? S 0:01 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/myapp.ini --daemonize /var/log/uwsgi/app/myapp.log
17286 ? S 0:01 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/myapp.ini --daemonize /var/log/uwsgi/app/myapp.log
17287 ? S 0:00 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/myapp.ini --daemonize /var/log/uwsgi/app/myapp.log
17343 pts/0 S+ 0:00 grep --color=auto wsgi
但是,当我运行uwsgitop时,它不报告任何正在运行的进程,只报告主进程。
uwsgi-1.0.3-debian - Fri Sep 30 13:21:52 2016 - req: 2488 - RPS: 11 - lq: 0 - tx: 284.0K
node: myapp - cwd: / - uid: 33 - gid: 33 - masterpid: 17279
WID % PID REQ RPS EXC SIG STATUS AVG RSS VSZ TX ReSpwn HC RunT LastSpwn
我曾经有过4行,其中一行代表uwsgitop。谁能告诉我发生了什么?
此外,可能来自pip freeze
命令的相关信息:
uWSGI==2.0.13.1
uwsgitop==0.9
wsgiref==0.1.2
提前致谢。
编辑:有趣的是,常规'ol top确实显示了他们消耗资源的过程:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3445 www-data 20 0 63480 4740 3184 S 0.3 0.2 36:27.50 nginx
17666 www-data 20 0 209m 21m 9456 S 0.3 1.1 0:03.25 uwsgi
17755 www-data 20 0 208m 21m 9456 S 0.3 1.1 0:02.07 uwsgi
17808 www-data 20 0 208m 21m 9456 S 0.3 1.1 0:00.22 uwsgi