Estoy buscando un buen equilibrador de carga para usar con Tomcat. Nuestra aplicación no almacena nada en el contexto de la sesión, por lo que no es importante redireccionar al mismo servidor para el mismo usuario. Simplemente me gustaría algo que pueda poner en cola solicitudes de estilo round-robin o basado en la carga individual de cada servidor. También me gustaría poder agregar servidores de aplicaciones a aquellos disponibles para manejar solicitudes sin tener que reiniciar el equilibrador de carga. Estamos ejecutando la aplicación en Linux si eso es importante.soluciones de equilibrador de carga Tomcat
Respuesta
Si todo lo que necesita es un equilibrador de carga de software en uso Linux Apache Webserver2, Mod-Jk y Tomcat Clustering:
En tu servidor Web:
1) Instalar apache2 y modjk:
sudo apt-get install apache2 libapache2-mod-jk
sudo a2enmod jk
2) Cree un archivo "workers.properties" disponible para su apache2. En algunos casos, se crea automáticamente en su directorio/etc/apache2. Este archivo es la celebración de las libras de configuración, los nombres de nodos, ips y puertos de los servidores Tomcat, es decir .:
worker.list=balancer,lbstats
#node1
worker.node1.type=ajp13
worker.node1.host=NODE-IP
worker.node1.port=NODE-AJP-PORT
worker.node1.lbfactor=10
#more nodes here ... (change name in between)
#lb config
worker.balancer.type=lb
#turn off sticky session
worker.balancer.sticky_session=0
#add all defined node names to this list:
worker.balancer.balance_workers=node1
#lb status information (optional)
worker.lbstats.type=status
3) Crear una sección Mod-Jk en su archivo apache2 configuración, si no se ha creado de forma automática.
JkWorkersFile /etc/apache2/workers.properties
JkLogFile /var/log/apache2/mod_jk.log
JkShmFile /tmp/jk-runtime-status
JkLogLevel info
4) Monte su aplicación al equilibrador de carga (archivo apache2 config):
JkMount /MyApp balancer
JkMount /MyApp/* balancer
JkMount /modjkstatus lbstats
En sus servidores Tomcat:
5) Instalar Tomcat utilizando el paquete tar (mucho mejor a continuación, la versión adecuada). Cambiar server.xml:
- desactivar los conectores http.
- habilite el conector AJP/1.3 y configure el puerto que definió en workers.properties para este nodo.
añadir jvmRoute con el nombre de nodo derecho al elemento "motor":
<Engine jvmRoute="node1" ...
añadir un elemento de "Cluster" para la configuración más simple
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" />
6) Despliegue su aplicación a todos los tomcat y agrega un elemento distribuible a tu web.xml.
<distributable/>
7) Asegúrese de que el servidor web pueda acceder a los puertos ajp en sus servidores tomcat y que nadie más pueda.
8) Inicie el servidor web y los tomcats uno tras otro y revise los registros (/var/log/apache2/mod_jk.log, también).
9) accede a tu aplicación: http://mywebserver.com/MyApp
10) Comprobar (y denegar el acceso a) la página de estado lb http://mywebserver.com/modjkstatus
- 1. websockets con escalabilidad del equilibrador de carga
- 2. Symfony2 Requisito de HTTPS detrás del equilibrador de carga EC2
- 3. ¿Cómo usar django-compressor detrás del equilibrador de carga?
- 4. Experiencias utilizando el equilibrio de carga de software frente a un equilibrador de carga de hardware?
- 5. ¿Cómo eliminar el retraso de recarga de la aplicación ASP.NET utilizando el equilibrador de carga?
- 6. Mejor equilibrador de carga de software de fuente abierta para Linux
- 7. Acceso directo a los trabajadores de Azure; puenteando el equilibrador de carga
- 8. Cómo forzar node.js/express.js a HTTPS cuando se ejecuta detrás de un equilibrador de carga AWS
- 9. No se puede obtener la dirección IP del usuario (proxy/firewall/equilibrador de carga)
- 10. ¿Agregar nodos mediante programación a un equilibrador de carga como Haproxy?
- 11. WCF sobre IIS a través del equilibrador de carga informa la dirección base incorrecta
- 12. Tomcat 6.0 Carga de archivos grandes (> 2 GB)
- 13. ¿Hay algún riesgo de seguridad si instalamos el Certificado SSL en el equilibrador de carga en lugar de los servidores?
- 14. Equilibrio de carga y APC
- 15. Soluciones de pago Php?
- 16. ¿Qué es el equilibrador de patrones virtuales experimentales de Scala?
- 17. Apache + Tomcat con mod_jk: configuración maxThread al equilibrar la carga
- 18. Equilibrio de carga MongoDB
- 19. Soluciones duplicadas
- 20. Soluciones de sincronización de archivos Eclipse/Aptana
- 21. Soluciones escalables de geocodificación internacional
- 22. Confundiendo soluciones de bandas PNG
- 23. soluciones de gráficos para Yesod
- 24. Rails 3 soluciones de autenticación
- 25. Dojo y soluciones de plantillas
- 26. Soluciones de autenticación para Node.js
- 27. Soluciones de latencia de audio de Android
- 28. Aplicación web de balance de carga
- 29. Soluciones de Facturación recurrente de Magento
- 30. Soluciones de programación de personal algorítmico
¿Qué tan grande de una aplicación está hablando aquí?Si se trata simplemente de dos servidores para manejar la carga, puede hacerlo a nivel del servidor web. Si está buscando más de 5 servidores, puede consultar soluciones comerciales. – Sean
Probablemente más de 5 servidores. –