apache à tomcat: mod_jk vs mod_proxy

108

Quels sont les avantages et les inconvénients de l'utilisation mod_jket mod_proxyde la mise en façade d'une instance Tomcat avec Apache?

J'utilise mod_jk en production depuis des années, mais j'ai entendu dire que c'était "l'ancienne façon" de faire face à Tomcat. Dois-je envisager de changer? Y aurait-il des avantages?

cherouvim
la source
1
Nous avons eu plus de problèmes avec toutes les mod_proxy_*variantes et une utilisation mod_jken production avec succès, à la fois pour Tomcat (5.5, 6, 7) et JBoss / WildFly.
mirabilos

Réponses:

89

Une comparaison avantages / inconvénients pour ces modules existe sur http://blog.jboss.org/

mod_proxy

* Pros:
      o No need for a separate module compilation and maintenance. mod_proxy,
        mod_proxy_http, mod_proxy_ajp and mod_proxy_balancer comes as part of 
        standard Apache 2.2+ distribution
      o Ability to use http https or AJP protocols, even within the same 
        balancer.
* Cons:
      o mod_proxy_ajp does not support large 8K+ packet sizes.
      o Basic load balancer
      o Does not support Domain model clustering

mod_jk

* Pros:
      o Advanced load balancer
      o Advanced node failure detection
      o Support for large AJP packet sizes
* Cons:
      o Need to build and maintain a separate module
cherouvim
la source
2
Et si vous utilisez Apache 2.0?
blak3r
11
Je trouve cette entrée de blog tomcatexpert.com/blog/2010/06/16/ ... utile.
CodeReaper
"Besoin de construire et de maintenir un module séparé", il est livré avec apache donc vous n'avez pas besoin de construire quelque chose ...
Yura
1
@yura - Cela peut dépendre de la version de votre système d'exploitation. Centos 7.x ne semble pas avoir le module disponible et il n'est pas disponible par défaut dans apache 2.4: httpd.apache.org/docs/2.4/mod
runamok
1
Plus précisément, voir wiki.apache.org/tomcat/FAQ/Connectors#Q7 qui @ daniel-serodio a référencé ... Où puis-je télécharger une distribution binaire de mon connecteur? Vous ne pouvez pas: vous devez télécharger la source et la compiler pour votre plate-forme.
runamok
28

Si vous souhaitez rester dans Apache land, vous pouvez également essayer le plus récent mod_proxy_ajp , qui utilise le protocole AJP pour communiquer avec Tomcat au lieu de l'ancien HTTP, mais qui exploite mod_proxy pour faire le travail.

Vinko Vrsalovic
la source
Merci. Mais savez-vous ce que le proxy_ajp offrirait de plus que jk?
cherouvim
2
Oui, tous les contrôles et (relativement) facilité de configuration de mod_proxy, avec les avantages de vitesse du protocole AJP (au lieu d'utiliser HTTP)
Vinko Vrsalovic
2
AJP utilise un format binaire donc en théorie, il est supposé fournir de meilleures performances. Cependant, je n'ai jamais testé les performances du proxy AJP vs HTTP.
Taylor Leese