¿Cuál es el "costo" bruto de usar hilos en java? ¿Existe alguna regla general/valores empíricos? ¿Cuánta memoria cuesta la creación de un hilo? ¿Hay una estimación aproximada de cuántos ciclos de CPU cuesta crear un hilo?¿Cuál es el "costo" aproximado de un subproceso en ciclos de CPU y memoria?
Contexto: En un servlet de una aplicación web quiero paralelizar la creación de contenido ya que partes del contenido están basadas en archivos, basadas en bases de datos y en servicios web. Pero esto significaría que por cada "http-request-thread" (de mi contenedor serlvet) tendré dos o cuatro hilos adicionales. Tenga en cuenta que voy a utilizar el ExecutorService
en Java 6.
¿Qué debo esperar cuando uso cientos a miles de subprocesos de Java en un servidor web?