2010-07-07 13 views

Antwort

4

Launchd auf OSX

Upstart/init auf den Unix-Varianten.

uwsgi hat auch einen eigenen Prozessmanager, also können Sie das auch einfach ausführen.

Tuning:

Überprüfen Sie die mailing list, für die Beratung über Ihre besonderen Anforderungen. Uwsgi ist erstaunlich, es ist eine komplette Bereitstellungslösung.

Nginx über 0.8.40 wird standardmäßig die uwsgi-Bindungen erstellen, nginx erstellen, uwsgi erstellen und du bist golden.

1

das sind die Funktionen i in meiner fabfile.py-Datei verwenden (check out Python Stoff, wenn Sie nicht bereits haben):

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;')) 

In meiner uwsgi.ini Datei angeben i:

[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_ 

für mich die wichtigsten gotyas waren:

  • die daemonise Option verwenden, wenn Sie den uwsgi Server gehen halten wollen, nachdem Sie Ihre Terminal/ssh s schließen ITZUNG
  • Verwendung vHost mehrere Standorte unter dem gleichen uwsgi Instanz laufen, das ist toll, wenn Ihr Engpass Speicher ist, wie meine mit dem ansonsten fantastischen Webfaction Gastgeber ist
  • pidfile verfolgt die aktuelle Instanz, Sie ermöglicht uwsgi zu nennen - stop pidfile, uwsgi --start pidfile
  • procname und procname-prefix/append geben Sie Ihrem Prozess einen schönen Namen, damit Sie ihn einfach mit ps -u username | grep some_string
+0

hat mir sehr geholfen! +1 für den "procname" –

0

Ich werde mit supervisord für die Verwaltung der Start, Stop-Prozess gehen.

Verwandte Themen