Hola a todos,
Tengo una duda bastante existencial. Estoy desarrollando una aplicación en java, y tiene muchas tareas simultaneas (sobre unas 500 aproximadamente calculando como cab..). Mi problema es que tengo un ordenador con 4 procesadores y tengo entendido que java con green Threads solo es capaz de aprovechar 2 procesadores simultaneamente. ¿Es eso cierto?. Estoy planteandome hacerlo con procesos en caso de que no pueda, (el desarrollo es sobre debian), pero es muy costoso en rendimiento de esta manera y mas siendo procesos java pequeñitos que tienen que cargar una jvm cada uno... Lo bueno de esta arquitectura es que no me limitaria a java, podria implementar algunos en C, C++, Python, Ruby, Earlang ... en caso de que tuviera un cuello de botella, pero seria un poco menos uniforme la aplicación.... Otra opción es hacer todo con Earlang... pero conlleva varios riesgos....(perdida de algunas librerias, wrappers de librerias java más pesados, pufff) y un paron en el desarrollo considerable.... aunque al ser mia me la suda...
¿Alguna sugerencia? y sobre todo. ¿Seguro que un proceso java con multihilo solo puede aprovechar 2 procesadores como máximo?. Que solo pueda utilizar 1 me pareceria de lo más normal... pero ya que se pone... que se limite a 2 me parece raro, raro, raro... Otra opción es que le den morcilla a los otros 2 procesadores y que se queden para el sistema operativo y el resto de procesos del sistema y si algun dia tengo que escalar que sea enganchandole más maquinas horizontalmente.....
Un saludo, gracias por adelantado y perdonad mi pobre grámatica...