J'ai procédé à des essais avec le serveur HTTP
NGINX.
Pourquoi utiliser
NGINX plutôt qu'
Apache ? La réponse est ici:
lien vers presentation.
Extraits:
Consommation mémoire:
Nombre de requetes délivrées:
Le secret de
nginx réside dans l'application de deux principes:
* Le traitement concurrent (parallèle ) d'une requete.
* Un soin particulier porté dans l'écriture du code.
Nginx est particulièrement adapté pour faire du reverse-proxy et de la répartition de charge.
Installation de nginx.Une fois que l'archive décompressée, j'ai lancé la commande :
./configure --without-http_rewrite_module --with-debug Puis
make et
make install.
J'ai obtenu un répertoire
nginx avec l'arborescence suivante:
ginx/conf:fastcgi.conf koi-utf
nginx.conffastcgi.conf.default koi-win
fastcgi_params mime.types nginx.conf.default
fastcgi_params.default mime.types.default win-utf
nginx/html:50x.html index.html
nginx/logs:access.log error.log nginx.pid
nginx/sbin:nginx
Lancement.Le fichier nginx.conf qui contiendra toute la configuration directement ou par un système d'include (ex:
include mime.types; ) .
Le service se lance par la commande sbin/nginx et s'arrete par un kill PID.
Le serveur se lance sans modification du fichier de configuration et se met à l'écoute du port 80. Il utilise deux processus par défaut:
9775 ? Ss 0:00 nginx: master process sbin/nginx
9776 ? S 0:00 nginx: worker process
La vérification par
telnet localhost 80 GET / Donne un bienvenue :
welcome to NGINX !
Activation du mode Proxy.J'ai une application Rails qui fonctionne sur la même machine sous serveur mongrel sur le port 3000.
J'ai modifié nginx.conf comme ceci :
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass
http://localhost:3000;
proxy_set_header X-Real-IP $remote_addr;
}
... continuation
Une requete sur http://localhost/ pointe à présent sur l'application Rails.
Les journaux d'accès ou d'erreur sont dans le répertoire nginx/logs