Estoy escribiendo una aplicación de servidor Java bastante compleja que tiene una porción de procesamiento de fondo significativa además del procesamiento habitual de solicitud-respuesta. Parte del procesamiento en segundo plano se realiza en forma de cron utilizando Quartz framework. Otras tareas son más de demanda: si un nuevo cliente se conecta, crea trabajo adicional para actualizarlo de vez en cuando. Las tareas de cron también se pueden modificar: algunas supervisan aplicaciones externas, otras calculan estadísticas, etc.agrupaciones de hilos individuales o múltiples para el servidor Java?
Estoy usando varios grupos de subprocesos para ejecutar todos esos trabajos con la idea de que trabajos similares compartirán un grupo de subprocesos pero diferentes trabajos no compartirán uno. Por ejemplo, los trabajos de monitor nunca se ejecutarán en el grupo de estadísticas, y los trabajos de estadísticas nunca se ejecutarán en el grupo de monitores.
Por otro lado, sé que algunas personas preferirían tener solo un grupo de subprocesos y ejecutar todo sin ninguna separación.
Me pregunto qué se considera la mejor práctica en tal escenario.
¿Cuáles son los pros y las desventajas de separar las piscinas de hilos?
¿Importa?
+1 pregunta interesante. – KLE