Saltar al contenido

Java 27 in Practice: Smaller Heaps, Smarter Defaults, and Valhalla on the Horizon (#101)

12 de septiembre de 2026 · 58 min

Notas del episodio

Episode 101 of the Foojay Podcast.

JDK 27 arrives on 15 September 2026 without finalising a single new piece of language syntax. It is still worth the upgrade: object headers shrink from 64 bits to 32, which the JEP measures at 22% less heap and 8% less CPU on SPECjbb2015, and G1 becomes the default garbage collector on every machine. Both changes live inside the JVM, so an application you compiled years ago picks them up with no code change at all.

Simon Ritter, Deputy CTO at Azul and Java Champion, takes us through all nine JEPs in the release, explains why a non-LTS version is still worth testing against, and makes the point that "long-term support" describes the binary you download rather than anything in OpenJDK itself. We also cover the move from quarterly to monthly security updates that started in August 2026, and then look ahead to March 2027, when Project Valhalla reaches its first preview after roughly twelve years of work.

Topics include:

  • Compact object headers by default, and what 22% less heap actually buys you in production
  • Post-quantum key exchange in TLS 1.3, and the harvest-now-decrypt-later attack it defends against
  • JFR redaction: keeping access tokens and passwords out of flight recordings you share
  • Structured concurrency in its seventh preview, and why an evolving API stays in preview
  • The Vector API's twelfth incubation, and what it is waiting for
  • Value Objects in Java 28: a new value keyword, 179,000 lines, 1,800 files, and why it will not be final in JDK 29
  • Whether a Simple JSON API in the JDK will survive its previews, or go the way of string templates


Guest: Simon Ritter
Deputy CTO at Azul, Java Champion
Simon on LinkedIn
Simon on Foojay

Links:
Full show notes, with every JEP linked
JDK 27
What CSPUs Mean for Your Release Pipeline
What to Know About Garbage Collection as a Java Developer!
Project Valhalla

Timestamps:
00:00 Introduction of the topic and guest
01:27 How long Simon has been doing Java
01:54 Why release 27 is important, even when not being a Long Term Support release
04:55 Quarterly and monthly security updates between new version releases
08:07 Which JVM versions are most used in companies
09:23 JEP 534: Compact Object Headers by Default
14:51 JEP 523: Make G1 the Default Garbage Collector in All Environments
18:59 JEP 527: Post-Quantum Hybrid Key Exchange for TLS 1.3
22:55 JEP 538: PEM Encodings of Cryptographic Objects (Third Preview)
25:35 JEP 536: JFR In-Process Data Redaction
28:02 JEP 531: Lazy Constants (Third Preview)
29:55 JEP 532: Primitive Types in Patterns, instanceof, and switch (Fifth Preview)
33:13 JEP 533: Structured Concurrency (Seventh Preview)
38:21 JEP 537: Vector API (Twelfth Incubator)
40:28 Looking forward to Java 28 and Project Valhalla
42:31 JEP 401: Value Objects and JEP 539: Strict Field Initialization
47:36 Can we expect this to be finalized in Java 29?
48:26 LTS releases every 1, 2, or 3 years?
49:55 JEP 541: Deprecate macOS/x64
51:53 JEP 540: Simple JSON API (Incubator)
55:30 Conclusion, what to remember from this release

Todos los episodios de Foojay.io | Friends of OpenJDK and Java Programming

Ajustes

Visualización

Idioma

Determina qué emisoras ves primero en la página de inicio.

Historial

Las emisoras y episodios escuchados recientemente y tus últimas búsquedas solo se guardan en este navegador.

Avisos

Un breve aviso cuando un pódcast que sigues tiene un episodio nuevo. Puedes desactivar pódcast concretos con la campana de su página.

Cuenta

Guarda tus favoritos: en la app y en la web.

Atajos de teclado

/
Abrir búsqueda
Espacio
Reproducir o pausar
← →
En el reproductor: 15 s atrás, 30 s adelante (episodios) · en una fila: siguiente tarjeta
↑ ↓
En una fila: destino dentro de la tarjeta
Inicio / Fin
En una fila: primera o última tarjeta
Esc
Cerrar ventana o menú
?
Este resumen
Reproduciendo ahora

Ir a la emisora

A continuación

    Añade episodios con «A continuación»: sonarán después del episodio actual.