La empresa Trigger.dev reemplazó Node.js con Bun en uno de sus servicios críticos, Firestarter, un broker de conexiones HTTP, logrando un aumento del 5 veces en el rendimiento (throughput). Firestarter es vital para la ejecución de tareas en Trigger.dev, eliminando la necesidad de arranques en frío y despliegues de contenedores. Inicialmente, el servicio Firestarter, basado en Node.js, consumía un alto porcentaje de CPU debido a consultas SQLite ineficientes, validación Zod en cada solicitud y conversión de encabezados. Tras una serie de optimizaciones, que incluyeron la sustitución de SQLite por un Map, la migración a Bun y la eliminación de validaciones Zod innecesarias, se logró una mejora significativa en el rendimiento y la latencia. Además, se identificó y corrigió una fuga de memoria en el modelo HTTP de Bun. La optimización final, la compilación del código Bun en un binario único, redujo aún más el tamaño de la imagen y mejoró el rendimiento. El cambio a Bun permitió a Trigger.dev optimizar significativamente su infraestructura y mejorar la eficiencia de sus servicios.
