uwsgi + django через Nginx - настройки / спавн uwsgi? - PullRequest
6 голосов
/ 07 июля 2010

Я склоняюсь к uwsgi + nginx для моего приложения Django. Может ли кто-нибудь рассказать о лучшем способе запуска моих процессов uwsgi?У кого-нибудь есть опыт настройки uwsgi?

Ответы [ 3 ]

4 голосов
/ 10 июля 2010

Launchd в OSX

Upstart / init в unix.

У uwsgi также есть собственный менеджер процессов, так что вы можете просто запустить его.

Настройка:

Проверьте список рассылки , чтобы узнать о ваших конкретных требованиях.Uwsgi потрясающий, это комплексное решение для развертывания.

Nginx выше 0.8.40 по умолчанию создаст привязки uwsgi, создайте nginx, создайте uwsgi, и вы - золотой.

2 голосов
/ 28 ноября 2011

это функции, которые я использую в своем файле fabfile.py (проверьте Python Fabric, если вы еще этого не сделали):

def start_uwsgi():
    with cd(env.server.uwsgi):
        if(exists('server.pid')):
            stop_uwsgi()
            run('sleep 1')
        run('source venv/bin/activate;uwsgi --ini uwsgi.ini;'))

def stop_uwsgi():
    with cd(env.server.uwsgi):
        if(exists('server.pid')):
            run('source venv/bin/activate;uwsgi --stop server.pid;'))

В моем файле uwsgi.ini я указываю:

[uwsgi]
socket = :{{your_port}}
master = true
vhost = true
no-site = true
processes = 1
enable-threads = true
pidfile = server.pid
daemonize = server.log
auto-procname = true
procname-prefix = servername_

для меня основные готы были:

  • используйте опцию daemonise, если вы хотите, чтобы сервер uwsgi работал после закрытия сеанса терминала / ssh
  • используйте vhost для запуска нескольких сайтов под одним экземпляром uwsgi, что замечательно, если у вас узкое место в памяти, как у меня с фантастическим хостом веб-фракций
  • pidfile отслеживает текущий экземпляр, позволяя вам вызывать uwsgi --stop pidfile, uwsgi --start pidfile
  • procname и procname-prefix / append дают хорошее имя вашему процессу, чтобы вы могли легко выделить его, используя ps -u username | grep some_string
0 голосов
/ 27 февраля 2015

Я пойду с супервизором для управления запуском, остановкой процесса.

...