# We replaced Redis with MySQL for inventory reservations--and it scaled

DevFeed: [We replaced Redis with MySQL for inventory reservations--and it scaled](<https://devfeed.tech/articles/we-replaced-redis-with-mysql-for-inventory-reservations-and-it-scaled-1564.md>)

Original publisher: [Read original article](<https://shopify.engineering/scaling-inventory-reservations>)

Author: Emilie Noel

Published: 2026-05-12T16:51:53Z

Content type: article

Language: en

Sources: [Shopify Engineering](<https://devfeed.tech/sources/shopify-engineering.md>), [Shopify Engineering - Shopify Engineering](<https://devfeed.tech/sources/shopify-engineering-shopify-engineering.md>)

Topics: [MySQL](<https://devfeed.tech/topics/mysql.md>), [Redis](<https://devfeed.tech/topics/redis.md>), [Database](<https://devfeed.tech/topics/database.md>), [Shopify](<https://devfeed.tech/topics/shopify.md>), [Transactions](<https://devfeed.tech/topics/transactions.md>)

Tags: [database](<https://devfeed.tech/tags/database.md>), [ecommerce](<https://devfeed.tech/tags/ecommerce.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [payment-processing](<https://devfeed.tech/tags/payment-processing.md>), [performance](<https://devfeed.tech/tags/performance.md>), [redis](<https://devfeed.tech/tags/redis.md>), [scale](<https://devfeed.tech/tags/scale.md>), [shopify](<https://devfeed.tech/tags/shopify.md>), [transactions](<https://devfeed.tech/tags/transactions.md>)

## AI overview

Shopify explains how it replaced Redis with MySQL for inventory reservations during checkout. Using one row per inventory unit, SKIP LOCKED, composite primary keys, and connection visibility, the rebuilt system met high-throughput and consistency requirements during peak Black Friday 2025 traffic.

## Source excerpt

How we used SKIP LOCKED, composite primary keys, and connection visibility to hit our scale targets.