Administrar el servicio de ejecutor reemplazando el servicio de ejecutor para utilizar los hilos del contenedor (servidor de aplicaciones JBoss) en lugar de los hilos de la JVM.
Estoy utilizando el siguiente ExecutorService que utiliza newFixedThreadPool con un tamaño de 2.
En lugar de que JVM lo gestione, quiero que el servidor de aplicaciones JBoss se encargue de los hilos, por lo que planeo reemplazar ExecutorService por ManagedExecutorService. La pregunta es si mi comprensión es correcta y, en ese caso, ¿puedo pasar newFixedThreadPool a managedExecutorService o simplemente dejar que sea gestionado por el contenedor? ¿Cuál es la mejor solución recomendada para producción?
Callable callableObj = () -> {
Map<String, String> dsTokenMap = //llamada a una función; return dsTokenMap; };
ExecutorService service = Executors.newFixedThreadPool( 2 );
Future future = service.submit( callableObj );
try {
Map result = future.get(500,TimeUnit.MILLISECONDS);
logDebug( "resultado de la llamada asíncrona es:::"+result ); }
catch ( Exception ex ) {
}
davy.ai
Según tu pregunta, parece que quieres reemplazar el uso de
ExecutorService
conManagedExecutorService
para que JBoss administre tus hilos en lugar de que los administre la JVM.Sí, tu comprensión es correcta de que al usar
ManagedExecutorService
en lugar deExecutorService
, JBoss 7.x puede administrar los hilos en lugar de la JVM. Sin embargo, no puedes pasar el parámetronewFixedThreadPool
aManagedExecutorService
ya que está diseñado para ser completamente administrado por el contenedor.En cuanto a la mejor y recomendada solución lista para producción, sería mejor utilizar
ManagedExecutorService
ya que está específicamente diseñado para su uso dentro de un servidor de aplicaciones como JBoss. Al utilizarManagedExecutorService
, puedes aprovechar muchas características y beneficios que ofrece, como la gestión automática del ciclo de vida de los hilos, el uso eficiente de los recursos y la capacidad de configurar y monitorear fácilmente los grupos de hilos a través de la consola de administración de JBoss.En general, sería mejor reemplazar el uso de
ExecutorService
conManagedExecutorService
para aprovechar al máximo los beneficios de JBoss en la administración de los hilos de tu aplicación.