2010-07-07 19 views

risposta

4

launchd su OSX

Upstart/init sui sistemi Unix.

uwsgi ha anche un proprio gestore di processi, quindi è sufficiente eseguirlo.

sintonia:

Controllare il mailing list, per consigli su vostre particolari esigenze. Uwsgi è incredibile, è una soluzione di distribuzione completa.

Nginx sopra 0.8.40 costruirà i collegamenti uwsgi per impostazione predefinita, Crea nginx, crea uwsgi e sei d'oro.

1

Queste sono le funzioni che uso nel mio file fabfile.py (check-out tessuto python se non l'hai già):

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

Nel mio file uwsgi.ini Preciso:

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

per me i principali gotyas erano:

  • utilizzare l'opzione daemonise se si desidera mantenere il server uwsgi andare dopo la chiusura del terminale/ssh s ESSIONE
  • uso vhost di eseguire più siti sotto la stessa istanza uwsgi, che è grande se il collo di bottiglia è la memoria, come la mia è con l'altro padrone di casa fantastico Webfaction
  • pidfile segue l'istanza corrente, consentendo di chiamare uwsgi - stop pidfile, uwsgi - start pidfile
  • procname e procname-prefix/append danno un bel nome al processo in modo da poterlo facilmente individuare usando ps -u username | grep some_string
+0

mi ha aiutato molto! +1 per il "procname" –

0

Andrò con supervisord per la gestione del processo di avvio, arresto.

Problemi correlati