Il pacchetto NGINX+mod_wsgi fa parte della famiglia di offerte denominate "Application Server"
E' disponibile in 2 varianti, light e standard.
L'unica differenza e' nell'address space utilizzabile e nel numero di processi.
Sebbene NGINX sia rinomato sopratuttto per le sue performance, l'utilizzo del modulo mod_wsgi lo rende un ottimo strumento per il deploy di applicazioni python.
Ad oggi (gennaio 2008) sono state testate le seguenti applicazioni/framework:
Django
Pylons
Trac
Turbogears
Al momento dell'attivazione, il cliente ricevera' il link all'area download da cui scegliere la versione di nginx che preferisce. Ogni tarball contiene una istanza gia' compilata di nginx+mod_wsgi con diverse opzioni di compilazione.
E' importante valutare che l'autore di mod_wsgi (che ha collaborato con noi nella realizzazione dell'offerta) ritiene che il suo modulo sia ancora in beta.
Dai nostri test non sono risultati problemi particolari, tuttavia per correttezza i prezzi delle offerte nginx+mod_wsgi sono piu' bassi a parita' di risorse. Tuttavia confidiamo che chi richieda tale tipo di offerte abbia le idee ben chiare sul prodotto che sta acquistando.
XXXX e' il numero di porta TCP assegnato
worker_processes 1;
error_log logs/error.log;
pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include conf/mime.types;
default_type application/octet-stream;
client_body_temp_path client_body_temp;
proxy_temp_path proxy_temp;
wsgi_temp_path wsgi_temp;
access_log logs/access_log;
sendfile on;
keepalive_timeout 65;
server {
listen 127.0.0.1:XXXX;
server_name localhost;
include conf/wsgi_vars;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
Utilizzando l'implementazione proxy di Unbit (uproxy) e' possibile usufruire del virtual hosting su nginx ed evitare l'utilizzo di piu' istanze se si hanno ancora risorse a disposizione.
worker_processes 1;
error_log logs/error.log;
pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include conf/mime.types;
default_type application/octet-stream;
client_body_temp_path client_body_temp;
proxy_temp_path proxy_temp;
wsgi_temp_path wsgi_temp;
access_log logs/access_log;
sendfile on;
keepalive_timeout 65;
server {
listen 127.0.0.1:XXXX;
server_name localhost;
include conf/wsgi_vars;
location / {
root html;
index index.html index.htm;
}
location /wiki {
wsgi_pass wsgi_apps/nginx-moinmoin.py;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server {
listen 127.0.0.1:XXXX;
server_name test2;
location / {
root html2;
index index.html index.htm;
}
}
server {
listen 127.0.0.1:XXXX;
server_name prova;
location / {
root html3;
index index.html index.htm;
}
}
}
Nginx (l'ultima modifica รจ del 2008-02-12 18:13:58, fatta da RobertoDeIoris)