2011-10-25 10 views
5

Mi pregunta es sobre la implementación en una instancia de servidor Tomcat que aloja múltiples aplicaciones y contextos de aplicaciones de hosts para Struts, Spring e Hibernate. Me gustaría implementar cambios en una aplicación sin reiniciar mi servidor Tomcat.Tomcat Hot Deploy para alojamiento de instancias varias aplicaciones

A modo de ejemplo, muchas veces en nuestra empresa tenemos que implementar nuevas aplicaciones o versiones de aplicaciones en nuestro entorno Tomcat y el proceso podría ser:

  • clase Mover y JSP a la carpeta explotado entonces el contexto recargarse, o
  • Otro escenario es cuando tenemos que implementar nuevas características que requieren modificaciones en contextos xml como struts-config.xml o spring-application-context.xml.

Actualmente tenemos que reiniciar el servidor web para cargar la nueva configuración. Esto estaría bien si Tomcat no tuviera otras aplicaciones en vivo que no quisiéramos interrumpir y reiniciar. Como ejemplo, si tengo una aplicación que usa Hibernate y Struts, entonces tengo que volver a implementarla en un servidor Tomcat con muchas otras aplicaciones ejecutándose, y despliego la nueva aplicación y reinicio el servidor. Esto no es ideal

Así que la pregunta es cuándo implementar cambios en Tomcat, incluidos los cambios de contexto, ¿tengo que reiniciar? ¿Hay alguna manera de realizar una implementación en caliente solo para esta aplicación específica y quizás reiniciar solo su contexto sin reiniciar el servidor web?

Muchas gracias! Saludos cordiales

+0

Puede al menos reiniciar una sola aplicación web tomcat FWIW [¿Cómo actualizo una aplicación web Tomcat sin reiniciar todo el servicio?] (Https://stackoverflow.com/questions/6583502/how-do-i-update-a -tomcat-webapp-without-restarting-the-entire-service) – rogerdpack

Respuesta

8

Puede establecer el atributo "autoDeploy" en "true" en server.xml. Puede leer información más detallada aquí http://www.mulesoft.com/tomcat-deploy.
Espero que esto ayude.

+1

He leído esto, así que 2 comentarios/preguntas: 1) Desplegar! = volver a implementar. 2) "Volver a implementar las aplicaciones existentes copiando un archivo WAR actualizado en la base de la aplicación". ¿Hay alguna manera de mantener el archivo de configuración de producción de forma remota durante este procedimiento? Desde implementar con war meas eliminar la carpeta anterior y explotar la nueva. – joksy82

Cuestiones relacionadas