Vous devriez regarder les forces de chacun et de décider d'utiliser une ou les deux en fonction de votre cas d'utilisation..
Alors, il semble que nginx fait tout ce que mongrel2 fournit dans la surface, vous y trouverez majore différences entre les deux.
Nginx brille comme un front-end serveur, qui peut demandes de proxy pour votre backend serveurs web/appservers et aussi de servir du contenu statique.
mongrel2 est une légère modification dans la pile. comme mentionné, c'est la puissance vient de l'utilisation de zeromq que la couche de transport entre elle et le backend appservers. Il peut servir dynamique de requête de l'url (app demande) et de diriger le calcul de la portion de la tâche à différentes sorties à l'aide de zeromq..
mongrel2 vous permet de servir non pas seulement http, websockets, etc, mais d'autres protocoles (si vous êtes enclin à le faire), tous de la même serveur. l'utilisateur ne saura jamais que des parties de l'application sont servis à partir de différents backends.
Si vos exigences pour le fonctionnement de votre webapp ne cesse de changer ou vous voulez ajouter des choses comme le streaming, la capacité de code dans différentes langues dans le back-end, etc, alors je serait certainement regarder mongrel2..
ou même avoir un hybride
lorsque vous utilisez nginx/haproxy/vernis pour les fichiers statiques et la mise en cache, et tout le reste est dirigé vers mongrel2 ..