Intercom agiliza CI y ahorra recursos con optimización

Fuentes: Intercom optimizes CI setup time, saving significant compute resources

Ingenieros de Intercom han optimizado significativamente el tiempo de configuración de su sistema de integración continua (CI), logrando ahorros sustanciales en recursos computacionales. El problema principal era el tiempo de preparación de los procesos Ruby para ejecutar pruebas, un cuello de botella que limitaba la eficiencia de la paralelización. Al reducir el tiempo de configuración en un solo segundo para cada uno de los 1350 trabajadores paralelos, el equipo ahorra más de 20 minutos de cómputo por compilación. La optimización se centró en acelerar el tiempo de inicio de la aplicación, utilizando la gema 'Bootsnap' para implementar un caché de rutas de carga. Bootsnap evita búsquedas lineales costosas en el sistema de archivos al crear un mapa de archivos requiribles, lo que reduce el tiempo de inicio de programas Ruby, especialmente aquellos con muchas gemas. La invalidación del caché, aunque compleja, es crucial para mantener la precisión y evitar resultados incorrectos. Este trabajo demuestra la importancia de optimizar incluso los aspectos más pequeños de un sistema de CI para mejorar el rendimiento y reducir costos.