Benchmark 2025: Java contra sus competidores — ¿quién es más rápido?
A principios de 2025, el equipo de TechEmpower y entusiastas independientes publicaron los resultados más recientes de benchmarks de rendimiento de lenguajes de programación populares. El foco está en Java, que continúa evolucionando con el lanzamiento de Java 25 y Project Loom. Analizamos los datos y preparamos un breve resumen: cómo han cambiado las posiciones de Java frente a Go, Rust, C#, Python y Kotlin.
Metodología de prueba
Las pruebas se realizaron bajo cargas típicas: solicitudes web (serialización JSON), procesamiento de datos (bucles, cálculos), gestión de memoria y velocidad de arranque. Se utilizaron las últimas versiones estables de los lenguajes y frameworks (Spring Boot 4 para Java, Gin para Go, Actix para Rust, .NET 9 para C#).
Resultados: velocidad de ejecución
- Java (Spring Boot 4 + Virtual Threads): ~185 000 solicitudes/seg. Excelente resultado gracias a Project Loom — los hilos virtuales redujeron la sobrecarga de concurrencia.
- Go (Gin): ~210 000 solicitudes/seg. Líder en velocidad pura en web, pero la diferencia con Java es mínima.
- Rust (Actix): ~230 000 solicitudes/seg. Líder absoluto, pero la complejidad de desarrollo y compilación sigue siendo alta.
- C# (.NET 9): ~175 000 solicitudes/seg. Cercano a Java, pero inferior en microoptimizaciones.
- Python (FastAPI): ~45 000 solicitudes/seg. Predeciblemente más lento, pero lidera en velocidad de escritura de código.
- Kotlin (Ktor): ~180 000 solicitudes/seg. Casi idéntico a Java, lo cual es lógico — funciona en la JVM.
Consumo de memoria
Aquí Java es tradicionalmente criticado, pero Java 25 con su G1 GC mejorado y cadenas compactas mostró un progreso notable:
- Rust: consumo mínimo (~15 MB por aplicación).
- Go: ~25 MB.
- Java: ~60 MB (frente a 100+ MB en Java 17).
- C#: ~70 MB.
- Python: ~40 MB, pero GC lento.
Velocidad de arranque
Gracias a GraalVM Native Image y Project Leyden, Java redujo el tiempo de inicio a 0.3–0.5 segundos para servicios simples. Esto es comparable con Go (0.2 seg) y Rust (0.1 seg). Anteriormente, Java perdía aquí con un tiempo de 1.5–2 segundos.
Conclusiones y pronósticos
El benchmark de 2025 muestra que Java ya no es «lento». Project Loom y GraalVM lo han devuelto al top tres en rendimiento. El lenguaje pierde frente a Rust y Go en números brutos, pero gana en ecosistema, madurez y disponibilidad de desarrolladores. Para soluciones empresariales, microservicios y sistemas de alta carga, Java sigue siendo una de las mejores opciones.
Si quieres profundizar en Java 25 o probar Virtual Threads en la práctica — echa un vistazo a nuestras lecciones en PythonLib. Estamos preparando una serie de materiales sobre Java moderno.