Shopify reemplazó Redis por MySQL para reservas de inventario y escaló

Shopify replaced Redis with MySQL for inventory reservations–and it scaled

Shopify reemplazó Redis por MySQL para reservas de inventario y escaló

Shopify migró su sistema de reservas de inventario de Redis a MySQL, utilizando una fila por unidad y la función SKIP LOCKED para manejar la contención. El cambio permitió transacciones ACID entre reservas y el libro mayor de inventario, eliminando errores de sobreventa. Sin embargo, el verdadero cuello de botella no era la base de datos, sino la gestión de conexiones. Al etiquetar las consultas y analizar el uso de conexiones, optimizaron el proceso de pago y ajustaron la configuración de MySQL, logrando superar sus objetivos de rendimiento durante el Black Friday 2025.

Las conexiones son finitas: a alto rendimiento necesitamos muchas transacciones cortas por segundo. Cuando otros procesos mantenían las conexiones por más tiempo, las reservas fueron la gota que colmó el vaso, no porque fueran lentas, sino porque el pool ya estaba casi agotado.

Más de este día

2026-08-09