hilos daemon en un contenedor de aplicación
-
09-09-2019 - |
Pregunta
un puesto al foro Smack recientemente que
A partir de hilos de demonio en un servidor Java EE es un gran no no
Básicamente XMPPConnection de Smack comienza un hilo de utilidad para supervisar los datos de entrada Y otra que le envíe los datos salientes desde / hasta el servidor Jabber, respectivamente. ¿Es razonable utilizar hilos demonio para escuchar escritura / lee en este escenario?
Solución
Sí, XMPPConnection crea dos hilos - uno para escuchar / leer y otro para la escritura. Pero éstos sólo viven tanto como la instancia XMPPConnection, que supongo que no es para siempre.
"A partir de las discusiones del demonio en un servidor Java EE es un gran no no"
¿Estás escribiendo EJB compatible con las especificaciones? Si es así, entonces esto se aplica. La especificación dice que no lo haga. EJB especificación 2.1:
"El grano de la empresa no debe intentar para gestionar las discusiones. El grano de la empresa No debe intentar iniciar, detener, suspender o reanudar un hilo, o para cambiar la prioridad o el nombre de un hilo. El grano de la empresa no debe intentar para gestionar grupos de hilos ".
O es sólo una aplicación web que le pasa a estar en ejecución en Tomcat? Si este es el caso, entonces no veo ningún problema fundamental. Sin los hilos, su cliente Smack sería incapaz de comunicarse con el servidor.
Otros consejos
He utilizado la API Smack sólo para las conexiones de clientes que son programas independientes. En primer lugar debe volver a la elección (o propósito) de la API de Smack dentro de un contenedor J2EE.