Impresionante... De esta manera java se pone al nivel de erlang en cuanto a recursividad...y si... Es una revolución exponencial... De esta manera java se está poniendo al nivel de los requerimientos del mundo moderno... Ahora esperemos que mejoren su sintaxis , pero eso es lo de menos.
Excelente video amigo 🎉 Solo me quedó una duda Si los Platform threads están asociados 1 a 1 los hilos del sistema operativo, ¿por qué en la herramienta vemos miles de hilos creados y con los virtual threads solo 30? O sea podemos tener 8 cores en un CPU pero miles de hilos con platform threads? Se usa context switch para ejecutar esos miles de hilos a pesar de tener pocos cores?
Hola Lucas, si se usa, pero es manejado por el schduler del sistema operativo, por eso es tan costoso, en VT lo maneja el scheduler de la JVM qué monta y desmonta los virtuales de los de plataforma. Pronto saldrá una actualización de este video, que aunque vigente ya han pasado muchas cosas nuevas
Por ahí el tema de los 30 Threads (o 32) se puede deber a que tu procesador sea de 16 nucleos y tenga SMT (hyperthreading en Intel) y Java vea que tenes 16 procesadores físicos pero 32 lógicos. PD: Esto no seria un nombre lindo para el patron Thread Pool?
Buena información. Sólo añadir, linux no peta, linux detecta que no tiene sentido esa ejecución de tantos threads y mata el proceso. Obvio, se puede configurar, dependiendo la distribución en un sitio u otro Gracias al limite en systend, no se come ataques de bucles infinitos, simplemente los para. Saludos.
Actualmente golang se utiliza para comunicaciones en tiempo real conwebsockets. Ahora me pregunto yo, con esto sería posible manejar hasta 1m de sockets en java?
todavía no hasta que lancen java 21 en setiembre 19 en spring ya anunciaron en la version 6.1 y spring boot 3.2 las demas librerias tambien tendran soporte como vertx o tomcat
Un vídeo estupendo, la parte práctica lo mejor. ¡Como profesor un 10! Mil gracias
Excelente presentación del tema, muy completo 👏👏👏
Impresionante... De esta manera java se pone al nivel de erlang en cuanto a recursividad...y si... Es una revolución exponencial... De esta manera java se está poniendo al nivel de los requerimientos del mundo moderno... Ahora esperemos que mejoren su sintaxis , pero eso es lo de menos.
Este video fué para Java 19 donde el proyecto loom estaba en fase de pueba. ¿En qué estado está ahora?
Excelente explicación! Pintan muy bien esos hilos virtuales.
Super! excelente explicacion de los hilos virtuales. Gracias!!
Gracias Diego ! Ahora sacamos hace unos días el de concurrencia estructurada
Gracias, muy interesante el vídeo
excelente video!
que buen video
Buenas tardes, prof como habilita la pestaña de threads en visual vm para ver los hilos de una app spring boot
Genial, voy a probar! Gracias
Excelente video amigo 🎉
Solo me quedó una duda
Si los Platform threads están asociados 1 a 1 los hilos del sistema operativo, ¿por qué en la herramienta vemos miles de hilos creados y con los virtual threads solo 30?
O sea podemos tener 8 cores en un CPU pero miles de hilos con platform threads? Se usa context switch para ejecutar esos miles de hilos a pesar de tener pocos cores?
Hola Lucas, si se usa, pero es manejado por el schduler del sistema operativo, por eso es tan costoso, en VT lo maneja el scheduler de la JVM qué monta y desmonta los virtuales de los de plataforma. Pronto saldrá una actualización de este video, que aunque vigente ya han pasado muchas cosas nuevas
Por ahí el tema de los 30 Threads (o 32) se puede deber a que tu procesador sea de 16 nucleos y tenga SMT (hyperthreading en Intel) y Java vea que tenes 16 procesadores físicos pero 32 lógicos.
PD: Esto no seria un nombre lindo para el patron Thread Pool?
Hola, muy buena esa, voy a implementar algo en Java para ver cuantos procesador "ve", pero tiene mucho sentido tu comentario, muchas gracias !
Buena información.
Sólo añadir, linux no peta, linux detecta que no tiene sentido esa ejecución de tantos threads y mata el proceso. Obvio, se puede configurar, dependiendo la distribución en un sitio u otro
Gracias al limite en systend, no se come ataques de bucles infinitos, simplemente los para.
Saludos.
Actualmente golang se utiliza para comunicaciones en tiempo real conwebsockets. Ahora me pregunto yo, con esto sería posible manejar hasta 1m de sockets en java?
en java también se maneja websockets
tengo una pregunta, para la librería reactiva de Spring webflux, cuando empezarán a implementar hilos virtuales o si ya están implementados ?
todavía no hasta que lancen java 21 en setiembre 19 en spring ya anunciaron en la version 6.1 y spring boot 3.2 las demas librerias tambien tendran soporte como vertx o tomcat
Siempre será mejor un lenguaje facilmengte escalable que uno más eficiente
Erlang
Hermoso, ahora sí Java por siempre 🥰, ojalá spring adopte esto también 🤩
Hola @Jose Luis, claro, siempre que uses Spring con Java estará disponible.
Spring es un framework de Java... Si está en Java lo puedes usar en Spring, evidentemente.