Puntos de referencia políglotas: elegir la herramienta adecuada para el trabajo adecuado
Cómo los puntos de referencia políglotas le ayudan a elegir la pila adecuada para cada aplicación: no hay un idioma que las domine a todas
Un compañero breve y de lectura rápida. Para obtener información detallada sobre la arquitectura (diseño de arnés, matriz de decisión, antipatrones y cómo bifurcar los puntos de referencia), lea, el artículo extenso.
Su organización eligió una pila en 2019. Sus cargas de trabajo no.
La mayoría de los equipos todavía estandarizan en un solo lenguaje para cada nuevo servicio: todo en Node, todo en Python, todo en Java o una apuesta heroica por Rust solo para greenfield. Ese hábito es comprensible: la contratación, las plantillas de CI y la revisión de seguridad se vuelven más fáciles cuando la pila es uniforme. El problema es que las cargas de trabajo no son uniformes. Una puerta de enlace API, un trabajo ETL nocturno, una transformación de borde NGINX, un microservicio JVM y un backend de chat con conexiones de larga duración hacen hincapié en diferentes partes del tiempo de ejecución. Elegir un ganador de un debate en el pasillo o de un único micro-punto de referencia es cómo terminas con la herramienta equivocada llevando la carga equivocada.
Polyglot Benchmarkses el antídoto: un arnés reproducible y un panel en vivo que comparaocho tiempos de ejecución deen las mismas cargas de trabajo deHTTP, para que los arquitectos puedan hacer coincidir la evidencia con contextos limitados en lugar del sesgo de pila predeterminado.

Qué mide
El panel público comparaNGINX njs,OpenResty Lua,Python (FastAPI),Go (net/http),Rust (Actix),Bun,Java (Javalin / Jetty)yKotlin (Ktor / Netty)en siete pruebas sintéticas que reflejan API real y patrones de borde: línea de base de texto sin formato, serialización de JSON, fibonacci vinculado a CPU, manipulación de cadenas, inspección de solicitudes, interna subsolicitud + transformación y lógica de enrutamiento. Cada prueba informa solicitudes por segundo, latencia promedio y de cola (incluido P99), tiempo hasta el primer byte desde el curl y recuentos de errores, transmitidos en vivo a medida que se completabench.sh.
Java y Kotlin se ubican junto con los tiempos de ejecución compilados y de secuencias de comandos para que las tiendas JVM puedan ver cómo Javalin y Ktor se negocian con Go, Rust, Bun y FastAPI en rutas idénticas, no contra una narrativa manual de "empresa versus nueva tecnología". El arnés se encuentra en ejemplos/puntos de referencia de flujo de trabajo: servicios de composición Docker, un perfilwrkcompartido (10 segundos, 4 subprocesos, 100 conexiones) y resultados de JSON consumidos por el panel. Puede bifurcarlo para sus propios candidatos y caminos populares.
Por qué este es un marco de decisión, no una tabla de clasificación
Polyglot Benchmarks no corona un idioma para siempre. Los ganadores cambian por fila de prueba: exactamente lo que desea al diseñar microservicios. La sección de veredicto del panel asigna los resultados a casos de uso (enrutamiento de borde en Lua/njs, concurrencia central en Rust/Go, servicios JVM en Java/Kotlin, velocidad en Python). Esa es la tesis:políglota por diseño, con datos para comités de revisión de arquitectura en lugar de opinión.

Seis beneficios para líderes de plataformas e ingeniería
- Evidencia sobre opinión: adjunte gráficos y configuraciones a los ADR; Resuelva los debates sobre la pila con carreras medidas.
- Ganadores de cargas de trabajo específicas: las rutas sensibles a la latencia, las transformaciones por lotes, las de borde y las propiedades JVM obtienen diferentes líderes.
- Costo total de propiedad: el RPS sin procesar no es suficiente; sopese el tiempo de construcción, el tamaño de la imagen, la adecuación de las habilidades del equipo y la carga de operaciones.
- Flujos de trabajo reproducibles: mismo repositorio, mismo archivo de redacción, mismo script de trabajo; reejecutable en CI.
- Microservicios políglotas legítimos: diferentes idiomas por límite de servicio sin vergüenza ni sorpresa.
- Reducción de riesgos: prototipo en segundo lugar antes de un mandato para toda la organización.

Inicio rápido
- Abra el panel en vivomientras se ejecuta una ejecución (o inicie una localmente).
- Clon
workflow-examples,cd benchmarks,docker compose up: ocho servicios de idiomas más tablero y banco de pruebas. - Lea
results.jsonen el volumen del panel y asigne los ganadores asus filas de carga de trabajo. - Escriba el ADR: incluya duración, subprocesos, conexiones y clase de hardware.
Leer la versión larga
El artículo extensocubre el diseño completo del repositorio, una tabla de criterios, el diagrama de matriz de decisiones, patrones de casos por familia de pruebas (incluidos Java y Kotlin), antipatrones, limitaciones y fragmentos listos para SEO para compartir con su ARB. Publicado porWorkstation; Sitio de referencia alojado enpolyglot-benchmarks.fictionally.org.
#Rust #GoLang #Bunjs #Java #Kotlin #Lua #Python #njs #FastAPI #Javalin #Ktor #OpenResty #polyglot #benchmarks