D'accord, c'est utilisé comme FastCGI si je comprend bien.
> d'autres vont faire tourner les applications Rails sur plusieurs serveurs et n'ont pas envie de faire tourner apache sur tous ces serveurs, etc.
FastCGI permet de faire ça, et sans la lourdeur / complexité du protocole HTTP (enfin je suppose que ces serveurs Ruby n'implémentent que HTTP/1.0, ce qui limite la complexité). FastCGI est conçu dés le départ pour la performance, c'est un protocol binaire, plus facile à parser que HTTP, et qui peut fonctionner sur des sockets unix ou tcp (donc on peut avoir un apache/nginx qui transmet les requêtes à une ferme de serveurs FastCGI).
> On le place derrière un reverse-proxy pour un tas de raisons (sécurité, bufferiser les uploads, etc.) mais surtout pour éviter qu'il ne serve les fichiers statiques (nginx, ou à défaut apache, fait ça bien mieux).
C'est bien ce que j'avais compris, ce qui m'amenait à la question "pourquoi HTTP ?"
> J'aurais envie de dire que HTTP est un protocole connu qui convient bien pour ça, alors pourquoi utiliser autre chose ?
[^] # Re: éviter de réinventer la roue
Posté par __o . En réponse à la dépêche Les pouvoirs magiques d'Unicorn 1.0.0. Évalué à 3.
> d'autres vont faire tourner les applications Rails sur plusieurs serveurs et n'ont pas envie de faire tourner apache sur tous ces serveurs, etc.
FastCGI permet de faire ça, et sans la lourdeur / complexité du protocole HTTP (enfin je suppose que ces serveurs Ruby n'implémentent que HTTP/1.0, ce qui limite la complexité). FastCGI est conçu dés le départ pour la performance, c'est un protocol binaire, plus facile à parser que HTTP, et qui peut fonctionner sur des sockets unix ou tcp (donc on peut avoir un apache/nginx qui transmet les requêtes à une ferme de serveurs FastCGI).
> On le place derrière un reverse-proxy pour un tas de raisons (sécurité, bufferiser les uploads, etc.) mais surtout pour éviter qu'il ne serve les fichiers statiques (nginx, ou à défaut apache, fait ça bien mieux).
C'est bien ce que j'avais compris, ce qui m'amenait à la question "pourquoi HTTP ?"
> J'aurais envie de dire que HTTP est un protocole connu qui convient bien pour ça, alors pourquoi utiliser autre chose ?
FastCGI a été créé spécifiquement pour ça :)