
Vercel migriert Build-Pool-Datenbank live von Redis zu DynamoDB
Der Build-Warm-Pool von Vercel hält eine Menge vorgewärmter Container bereit, damit Builds sofort starten können, ohne auf neue Rechenkapazität warten zu müssen. Drei Arten von Zustand wurden in Redis gespeichert: Container-Status, Authentifizierungstoken und Billing-Mappings, die jeden laufenden Build einer abzurechnenden Deployment-Instanz zuordnen. Während Token und Status bei einem Verlust innerhalb von etwa zehn Minuten wiederhergestellt werden können, sind die Billing-Mappings unwiederbringlich – geht ein Mapping verloren, wird der zugehörige Build nie abgerechnet. Da Redis als ephemerer Cache betrieben wurde, war diese Konstellation ein wachsendes Risiko. Vercel entschied sich für DynamoDB als dauerhaften Zielspeicher, primär wegen nativer TTL-Unterstützung, On-Demand-Skalierung für bursty Deployment-Traffic und dem Wegfall von Connection-Management bei hoher Nebenläufigkeit. Das neue Datenschema stellte die Container-ID als Sort-Key in den Mittelpunkt; Token werden nur als Hash gespeichert, sodass ein Tabellen-Read nie eine nutzbare Credential liefert. Für die zwei Access-Patterns, die kein reines Key-Lookup erlaubten – zeitabhängige Statuszählungen und Billing-Lookups –, wurden ein zeitbewusster Index und eine separate kleine Tabelle angelegt. Die Migration selbst lief in fünf Feature-Flag-gesteuerten Phasen unter Vollproduktionslast, ohne dass der Pool je pausiert wurde.
- Redis-Latenzen lagen bei ~1 ms pro Operation; der Supply Loop machte hunderte von Count-Calls pro Durchlauf – ein Muster, das DynamoDB so nicht abbilden kann.
- Token werden in DynamoDB als Hash gespeichert; eine Verifikation erfolgt durch Lookup des Containers und Hash-Vergleich, nicht durch direkten Token-Abruf.
- Billing-Mappings erhielten eine eigene kleine DynamoDB-Tabelle mit Consistent Reads, da sie das einzige System sind, das Deployment-Zuordnungen persistent hält.
- Fünf Rollout-Phasen mit Feature Flags: Redis-only → Dual Writes → Shadow Reads → DynamoDB-primary → DynamoDB-only, jede Phase rollback-fähig.
- Der zeitbewusste Index filtert bereits abgelaufene Container beim Statuszählen heraus – eine Anforderung, die Redis über implizite Datenstrukturen löste, DynamoDB aber explizit modelliert werden musste.
Frag die KI zum Artikel
Folgefragen zu Headline, Quelle und Volltext — Antwort streamt in wenigen Sekunden.
Verwandte Beiträge
- LAUNCHvercel.com3w
Vercel führt Deployment Storage für Rollbacks ohne Rebuild ein
- MEINUNGinfoq.com22h
Durable Workflows in Postgres ohne externen Orchestrator implementieren
- FORSCHUNGarxiv.org1w
Git4Data: Datenbank-natives Versionskontrollsystem für LLM-Agenten
- MEINUNGtowardsdatascience.com3w
LangGraph-Agent mit PostgreSQL-Backend für Produktionsreife

Vercel migriert Build-Pool-Datenbank live von Redis zu DynamoDB
Der Build-Warm-Pool von Vercel hält eine Menge vorgewärmter Container bereit, damit Builds sofort starten können, ohne auf neue Rechenkapazität warten zu müssen. Drei Arten von Zustand wurden in Redis gespeichert: Container-Status, Authentifizierungstoken und Billing-Mappings, die jeden laufenden Build einer abzurechnenden Deployment-Instanz zuordnen. Während Token und Status bei einem Verlust innerhalb von etwa zehn Minuten wiederhergestellt werden können, sind die Billing-Mappings unwiederbringlich – geht ein Mapping verloren, wird der zugehörige Build nie abgerechnet. Da Redis als ephemerer Cache betrieben wurde, war diese Konstellation ein wachsendes Risiko. Vercel entschied sich für DynamoDB als dauerhaften Zielspeicher, primär wegen nativer TTL-Unterstützung, On-Demand-Skalierung für bursty Deployment-Traffic und dem Wegfall von Connection-Management bei hoher Nebenläufigkeit. Das neue Datenschema stellte die Container-ID als Sort-Key in den Mittelpunkt; Token werden nur als Hash gespeichert, sodass ein Tabellen-Read nie eine nutzbare Credential liefert. Für die zwei Access-Patterns, die kein reines Key-Lookup erlaubten – zeitabhängige Statuszählungen und Billing-Lookups –, wurden ein zeitbewusster Index und eine separate kleine Tabelle angelegt. Die Migration selbst lief in fünf Feature-Flag-gesteuerten Phasen unter Vollproduktionslast, ohne dass der Pool je pausiert wurde.
- Redis-Latenzen lagen bei ~1 ms pro Operation; der Supply Loop machte hunderte von Count-Calls pro Durchlauf – ein Muster, das DynamoDB so nicht abbilden kann.
- Token werden in DynamoDB als Hash gespeichert; eine Verifikation erfolgt durch Lookup des Containers und Hash-Vergleich, nicht durch direkten Token-Abruf.
- Billing-Mappings erhielten eine eigene kleine DynamoDB-Tabelle mit Consistent Reads, da sie das einzige System sind, das Deployment-Zuordnungen persistent hält.
- Fünf Rollout-Phasen mit Feature Flags: Redis-only → Dual Writes → Shadow Reads → DynamoDB-primary → DynamoDB-only, jede Phase rollback-fähig.
- Der zeitbewusste Index filtert bereits abgelaufene Container beim Statuszählen heraus – eine Anforderung, die Redis über implizite Datenstrukturen löste, DynamoDB aber explizit modelliert werden musste.
Frag die KI zum Artikel
Folgefragen zu Headline, Quelle und Volltext — Antwort streamt in wenigen Sekunden.
Verwandte Beiträge
- LAUNCHvercel.com3w
Vercel führt Deployment Storage für Rollbacks ohne Rebuild ein
- MEINUNGinfoq.com22h
Durable Workflows in Postgres ohne externen Orchestrator implementieren
- FORSCHUNGarxiv.org1w
Git4Data: Datenbank-natives Versionskontrollsystem für LLM-Agenten
- MEINUNGtowardsdatascience.com3w
LangGraph-Agent mit PostgreSQL-Backend für Produktionsreife