¿Cómo recordamos el último JokerConf?

La semana pasada, en San Petersburgo, se celebró la conferencia internacional Java Joker. Les pedimos a nuestros muchachos que la visitaron que contaran un poco sobre la organización y las actuaciones más interesantes, en su opinión. Alguien notó lo más exagerado y divertido, alguien, lo más relevante y útil. Sin embargo, lea sobre esto de primera mano.



Este año hubo notablemente más visitantes y puestos de patrocinadores, lo que condujo a pequeños "atascos" en los pasillos, el área de exhibición y las cenas.

Los informes, como de costumbre, se llevaron a cabo en 4 transmisiones más 2 mini-transmisiones en los stands de demostración en el área de exhibición. Al menos 1 informe interesante siempre ha estado en este esquema. Entre discursos, puede hablar con un orador en el área de discusión o escuchar mini informes en los stands de demostración.

Y ahora sobre los informes en sí y por qué ir a las conferencias.



Andrey Gromov rjhdby ,
Desarrollador de backend FunCorp

Para mí, un viaje a la conferencia es una oportunidad para salir del contexto cotidiano. Para mirar cosas familiares desde otros puntos de vista, y no familiares, solo mire. Y lo más importante de la conferencia son las páginas escritas en un cuaderno. No con un resumen de los informes, por supuesto, sino con pensamientos que surgieron en el proceso de escucharlos.

Desde este punto de vista, Jocker 2019 pasó por mí bajo el signo de JNI y el interior de una máquina virtual.

Tres informes despertaron el mayor interés, sin contar a Baruch, quien también podría contarnos sobre los informes contables de la tienda con shawarma para que no se separe.

  • Cliff Click. El mar de nodos y el HotSpot JIT

Un maravilloso informe sobre la cocina interna HotSpot C2 JIT de una persona que realmente entiende esto mejor que casi todos.

Es poco probable que este conocimiento afecte mi trabajo, pero la mitad de una página en un cuaderno se reponía con notas marcadas como "leer" y "el enfoque se puede aplicar en XXX", lo cual es genial.

  • Ionut Balosin. Una carrera de dos compiladores: GraalVM JIT versus HotSpot JIT C2

Jonuts habló sobre algunas diferencias clave en la implementación de estos dos compiladores y su impacto en el rendimiento en ciertos tipos de tareas. A primera vista, parece que el informe es simple: bueno, ahí lo tomé y lo probé, pero esto es solo a primera vista, hasta que profundice en los detalles de lo que se contó y se mostró. Y luego llega la comprensión de la cantidad de trabajo realizado por el orador para mostrarnos estos "gráficos simples".

  • Dmitry Pisklov. Microservicios responsables de unos pocos microsegundos: amigos y enemigos

Sangre, agallas, todo lo que amo. Esta persona le enseñará la forma incorrecta de hacer lo incorrecto, pero microservicios de espacio rápido. Sospecho que después de este informe tuve que reemplazar muchas sillas con tapicería quemada.
¡Aquí y sobre inseguro, y sobre mmap, y sobre el ajuste de los parámetros del kernel, y sobre su pila de red, y sobre todo lo demás bajo el lema "rendimiento a la vanguardia"!

Evgeny Zakharov nerumb ,
Desarrollador de backend FunCorp

  • Sergey Kuksenko. ¿Java necesita tipos "en línea"? Mirada estrecha del ingeniero de rendimiento al proyecto Valhalla

Un interesante informe de un ingeniero de Oracle, que compartió detalles internos del trabajo en Valhalla. Tenía preguntas de por qué Valhalla no vino a Java durante tanto tiempo, y este informe respondió a muchas de ellas.

Los tipos de valores no son tan fáciles de implementar en Java, y debe guardar literalmente en unidades de "bytes". Sergey habló sobre algunos trucos que tuvieron que hacer para no cambiar la estructura de almacenamiento de objetos en Java y poner toda la información necesaria en ellos. Y lo que fue especialmente sorprendente fue que Valhalla no solo hace que Java sea más rápido, sino que también tiene consecuencias negativas. Es necesario complicar el código existente con los tipos de Valor, y en algunas situaciones se obtiene una ligera degradación en el rendimiento (aunque, según Sergey, en este momento no es más del 10% en los escenarios más negativos). Pero el trabajo activo todavía está en marcha y esperamos que el equipo de Oracle pueda optimizar los escenarios negativos y finalmente traducir Valhalla a Java.

Como beneficio adicional, Sergey pidió a todos los que se preocupan por probar Valhalla (pronto estará disponible en el ensamblado OpenJDK cuando se active la bandera) y verifique su trabajo en sus scripts. Es muy recomendable informar al equipo de desarrollo de la fuerte degradación de la productividad, si la hay.

  • Tagir Valeev. Java 9-14: pequeñas optimizaciones

Como siempre, un informe interesante de Tagir, que no necesita ser presentado. Hubo muchas cosas interesantes sobre las mejoras internas que acaban de estar disponibles con la actualización a la nueva versión de Java. Tagir dio muchos ejemplos, entre los cuales el más memorable fue el abs , que, al parecer, no tenía dónde optimizar más. La implementación del método en sí consistía en una sola línea de código. Pero este método también se hizo más rápido al hacerlo un método intrinsic . Hubo muchos otros ejemplos en los que una simple actualización a la próxima versión de Java aumenta la velocidad, a veces incluso en varios órdenes de magnitud, como con el mismo hypot . Le aconsejo que definitivamente vea la grabación del informe para aquellos que aún no lo han visto.

Oleg Zolotarev OlegXxl ,
Desarrollador de backend FunCorp

  • Juergen Hoeller y Josh Long. Primavera reactiva revisitada

Josh "recoció" todo el discurso, mientras que el informe en sí mismo habla muy bien sobre Reactivo en literalmente todas sus manifestaciones en la última versión de Spring. También hablaron sobre la integración con RSocket (¿sabías que por primera vez el arrancador de primavera en la versión estable usa una dependencia inestable?). Por supuesto, esta información también se puede obtener de los manuales oficiales, pero aquí fue de primera mano y en forma agregada.



  • Baruch Sadogursky. DevOps para desarrolladores (¿o contra ellos?)

Baruch arrancó las sábanas en la nota clave de cierre del primer día, ¡y lo hizo bastante bien! A partir de este informe, aprenderá cómo y de dónde proviene la ideología de DevOps, quién es el único que implementa su "interfaz". Fue interesante saber qué es realmente el "mejor código" (su DoD) y qué tienen en común la artesanía de software y DevOps.

Desafortunadamente, la nota final del segundo día no fue tan "inflamable" como el año pasado, cuando habló el Dr. Kurpatov, y la discusión de este discurso en las salas de chat tomó otro mes.

Sin embargo, no vamos a la conferencia por esto, pero en todos los demás aspectos fue un éxito.

¡Muchas gracias a todos los organizadores y oradores! ¡Nos vemos en las próximas conferencias!

Source: https://habr.com/ru/post/473854/


All Articles