tutorial paneles example create java tomcat java-ee

paneles - table swing java



¿Cómo se inician varios subprocesos desde Java EE? (6)

En realidad, no debería iniciar subprocesos desde su aplicación web a menos que tenga una necesidad muy específica de hacerlo. Sin más detalles sobre su problema, es difícil saber si este es el enfoque correcto para resolver su problema.

Es posible que desee echarle un vistazo a Quartz , que " es un sistema de programación de trabajos de código abierto con todas las funciones que se puede integrar o usar junto con prácticamente cualquier aplicación J2EE o J2SE ".

Necesito escalar las llamadas a Tomcat y se ha sugerido lanzar subprocesos internamente. ¿Alguien ha tenido que hacer esto y, en caso afirmativo, qué soluciones idearon?


Por lo general, se desaconseja la creación de sus propios subprocesos dentro de un servidor de aplicaciones porque el servidor debe administrar los subprocesos para una mejor escalabilidad. También puede encontrarse con problemas si el contenedor hace suposiciones sobre lo que está disponible en un contexto de subproceso, como la información de seguridad (por ejemplo, el sujeto autenticado). Eso normalmente ocurre si genera un hilo y luego utiliza un recurso del servidor de ese hilo desconocido para el contenedor.

Compruebe si hay una forma de obtener hilos gestionados por contenedor de Tomcat. WebLogic y WebSphere son compatibles con commonj.WorkManager, lo que le permite programar trabajos en subprocesos administrados por contenedor. Spring también puede usar commonj, pero no estoy seguro si ese soporte está disponible en Tomcat.


Tu pregunta es un poco vaga Tomcat ya utiliza un grupo de subprocesos para atender las solicitudes HTTP. Puede aumentar el número de subprocesos a través de la configuración de Tomcat. Consulte la wiki de Tomcat para obtener información sobre esto.

Si quiere decir que en su código desea iniciar subprocesos, le aconsejo que lea detenidamente la API java.util.concurrent presentada en Java 5. Lea también "Concurrencia de Java en la práctica", que es el texto sobre este tema.


como otros preguntaron, debería dar más detalles sobre lo que está tratando de lograr.

De lo contrario, tomcat usa grupos de hilos. aumentar la cantidad de hilos en el grupo. Use una versión más nueva de tomcat - 6.x. Use Java 6.0_10. Si es necesario, sintonice la aplicación usando un generador de perfiles y toque la configuración de JVM, si es necesario.


La abstracción J2EE para multihilo administrado es JCA . En particular, observe las clases WorkManager y Work. Ver también este arcículo . Spring también proporciona abstracción de gestor de trabajo respaldado por JCA.


¿Cuál es el problema que estás tratando de resolver con hilos?

Si tiene tareas de larga ejecución, debe usar JMS + un contenedor completo de Java EE.

Si intenta manejar el exceso de carga, podría considerar dos instancias de tomcat; sin embargo, si está utilizando sesiones de http, deberá investigar la replicación de la sesión.

Si se ve obligado a utilizar Tomcat, considere usar el marco de ejecutores en java.util.concurrency .