【发布时间】:2018-07-27 23:01:07
【问题描述】:
我正在尝试在 nginx+uWSGI 服务器上托管我的 django 应用程序。这是我的 nginx 配置
user www-data;
worker_processes 6;
pid /run/nginx.pid;
events {
worker_connections 1024;
multi_accept on;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
gzip on;
gzip_disable "msie6";
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
我使用 uWSGI 作为中间件。这是启动服务器的uWSGI命令
uwsgi --chdir=/path/to/your/project \
--module=mysite.wsgi:application \
--env DJANGO_SETTINGS_MODULE=mysite.settings \
--master --pidfile=/tmp/project-master.pid \
--socket=127.0.0.1:49152 \
--processes=5 \
--uid=1000 --gid=2000 \
--harakiri=20 \
--max-requests=5000 \
--vacuum \
--home=/path/to/virtual/env \
--daemonize=/var/log/uwsgi/yourproject.log
我有几个与此相关的问题。
我应该如何定义 uWSGI 配置的进程值?
重新生成特定进程的主要目的是什么?
--vacuum 如何帮助加速服务器?
如前所述,我预计此服务器上的流量会很大,因此是否需要任何其他自定义?
【问题讨论】:
标签: performance nginx uwsgi