运行 2 uWSGI 与 Nginx 在同一台服务器上

Run 2 uWSGI on the same server with Nginx

是否有可能 运行 在同一台服务器上使用 Nginx 提供两组静态文件的两个单独的 uWSGI 进程?

到目前为止,此设置似乎有时有效,但请求有时会失败....

nginx.conf:

http {
    upstream deploy {
        server 127.0.0.1:8002;
    }

    server {
        # nginx config - deploy
    }

    upstream staging {
        server 127.0.0.1:8001;
    }

    server {
        # nginx config - staging
    }
}

我确实有两个 uWSGI.ini 文件 master=True。这是他们的样子:

uwsgi.ini

[uwsgi]

home = /home/bsdev/.virtualenvs/bs_py34/
env = DJANGO_SETTINGS_MODULE=myproject.settings.persistent

socket = 127.0.0.1:8003
chmod-socket = 666
uid = bsdev
gid = bsdev
master = true
enable-threads = true
processes = 4

chdir = /www/django/releases/persistent/bsrs/bsrs-django/myproject
module = myproject.wsgi:application
pidfile = /tmp/myproject-master-persistent.pid
harakiri = 10
max-requests = 5000
logdate = true
vacuum = true

daemonize = /var/log/uwsgi/myproject-persistent.log
logdate = true

关于如何让它工作的任何想法?

有人有可用的配置吗?

似乎将它们都作为主进程,或者如果同一个 uwsgi 进程同时为两者提供服务,则请求将被丢弃....

提前致谢。

堆栈:

要举办两个或更多独立的项目,我会推荐以下内容:

  1. 在其 virtualenv 中为每个项目安装单独的 uWSGI
  2. 在nginx/sites-available中为每个项目创建单独的虚拟服务器,指向它自己的uWSGI