Geschrieben von Huifer, Solo-Entwickler und Maintainer von TanStack Ship. Ich betreibe drei Produktiv-SaaS-Anwendungen, die täglich alle drei Tools nutzen: Upstash Redis für den Edge-Cache (größte App: ~50k Anfragen/Tag, 5k Lesezugriffe/Sekunde Spitzenlast), Redis Cloud als dauerhafte Queue-Backbone (1M Enqueue/Tag), und Convex für reaktiven Document-State in der dritten B2B-SaaS (~5k gleichzeitige Abonnenten über 8 Monate). Das ist der ehrliche Upstash- vs. Redis-Cloud- vs. Convex-Vergleich, den ich mir vor App #1 gewünscht hätte: echte Preismathematik bei drei Workload-Formen, eine Entscheidungsmatrix basierend darauf, was Sie tatsächlich bauen, und der TanStack Ship Stack, der sie kombiniert. Kein Vendor-Sponsoring; jede Behauptung ist mit einer Erstanbieter-Quelle verlinkt.
Verifizierte Quellen: Upstash Preise · Upstash Redis Docs · Redis Cloud Preise · Redis Streams Docs · Convex Docs · Convex Reactive Queries · Cloudflare Workers · Cloudflare Workers Queues · D1 Limits · Zuletzt aktualisiert: 2026-05-07 · Changelog
TL;DR: Upstash gewinnt für HTTP-freundlichen Edge-Cache auf Cloudflare Workers (REST API + Preis pro Request); Redis Cloud gewinnt für hochperformante dauerhafte Queues und reife Redis-7-Features; Convex gewinnt für reaktiven Document-State mit erstklassiger TypeScript-Reaktivität. Meine echten Zahlen: Upstash ~$14/Monat bei 5k Lesezugriffen/Sekunde Spitzenlast, Redis Cloud ~$57/Monat für die Queue mit 1M Enqueue/Tag, Convex ~$32/Monat bei 5k gleichzeitigen Abonnenten. Jedes Tool wird auf seinem stärksten Achsen-Bereich anerkannt, bevor die Matrix kommt. Der Artikel endet mit einer Entscheidungsmatrix nach Workload-Form und dem TanStack Ship Cache- + Queue- + Reactive-Stack. Für die zugrunde liegende D1-Storage-Schicht lesen Sie den D1 Production Guide; für den Workers-Queues Deep-Dive.
Upstash vs Redis Cloud vs Convex: 3 Cache-Optionen im Test
Die „Upstash vs. Redis Cloud vs. Convex"-Frage hat einen häufigen Fehler: Sie werden als direkte Substitute behandelt. Upstash ist ein Redis-förmiger Cache über HTTP. Redis Cloud ist das kanonische verwaltete Redis mit dem höchsten Durchsatz-Ceiling. Convex ist eine reaktive Document-Plattform. Das falsche Tool zu wählen kostet Geld und Refactoring-Zeit.
Warum sich der Vergleich 2026 verschoben hat
Drei Kräfte haben diesen Vergleich in 18 Monaten neu gestaltet. Upstash hat Preismodelle pro Request und QStash hinzugefügt. Redis Cloud hat Redis 7 mit Streams und Active-Active-CRDT ausgeliefert. Convex hat GA erreicht mit erstklassiger TypeScript-Schema-Validierung und reaktiven Queries.
Upstash: Wo es tatsächlich gewinnt
Upstashs Produktiv-Stärken in der größten meiner drei Apps:
HTTP-first API aus Edge-Runtimes
Upstash Redis spricht einfaches HTTP, nicht nur RESP. Von einem Cloudflare Worker aus können Sie Upstash per fetch() aufrufen – keine Connection-Pool-Probleme, keine Cold-Start-Strafe. Das ist der einzelne größte Grund, warum Upstash für mich auf der Edge-Cache-Schicht gewonnen hat.
Preis pro Request
Das Upstash Pay-as-you-go-Tier berechnet pro Command ohne Minimum-Commitment. Eine SaaS in Monat 1 bei 100k Commands/Tag zahlt ~$0,30/Monat. Die gleiche Workload auf Redis Cloud erfordert Essentials ab $5/Monat Minimum plus GB-basiertes Egress.
Native QStash für HTTP-basierte Queues
Upstash QStash ist das Queue-Primitive auf Workers: HTTP-Delivery-Semantik, Retries, Dead-Letter-Routing. Für SaaS, die At-Least-Once-Delivery zwischen Workers ohne langlaufende Verbindung benötigt, ist QStash der Weg mit der geringsten Reibung.
Wo Upstash verliert
- HTTP-Latenz pro Command. Jeder Command ist ein HTTP-Round-Trip. Für Hot Paths, die 10+ Commands pro Request ausführen, summiert sich die Latenz; mitigation mit
MGET/MSET/Pipeline – beides wird unterstützt, aber Sie verdrahten es selbst. - Keine erstklassigen Streams für Dauerhaftigkeit. QStash ist At-Least-Once; Redis Streams mit Consumer Groups bieten Exactly-Once und Replay. Für hochperformante dauerhafte Queues gewinnt Redis Cloud.
Redis Cloud: Wo es tatsächlich gewinnt
Redis Clouds Produktiv-Stärken auf der Queue-Schicht meiner größten App:
Durchsatz-Ceiling
Redis Cloud auf Essentials oder Pro verarbeitet >100k Ops/Sekunde auf einem einzelnen Shard. Meine größte App läuft ~5k Writes/Sekunde bei Spitzenlast, mit viel Spielraum. Durchsatz pro Dollar ist bei Skala deutlich höher als bei Upstash.
Redis Streams mit Consumer Groups
Redis Streams bieten ein Kafka-förmiges dauerhaftes Log innerhalb von Redis. Consumer Groups, XADD/XREADGROUP und das PEL sind das kanonische At-Least-Once-und-dann-noch-mehr Queue-Primitive.
Reife Redis-7-Features
Redis Functions, CRDT für Active-Active-Multi-Region und Redis 8 (in Preview zum Zeitpunkt der Erstellung) werden nativ auf Redis Cloud ausgeliefert.
Wo Redis Cloud verliert
- Connection-Pool-Overhead aus Edge-Runtimes. Workers können keine langlebigen TCP-Verbindungen öffnen; jeder Command ist ein frischer TLS-Handshake. Hyperdrive hilft, fügt aber ein bewegliches Teil hinzu – der strukturelle Grund, warum ich Cache auf Upstash (HTTP) und Queue auf Redis Cloud aufgeteilt habe.
- Egress + Minimum-Commitment. Essentials startet bei $5/Monat pro Shard plus GB-basiertes Egress; die Fixkosten übersteigen Upstashs Preis pro Command bei kleinen Workloads.
Convex: Wo es tatsächlich gewinnt
Convexs Produktiv-Stärken auf der dritten B2B-SaaS in meinem Portfolio:
Reaktive Queries mit erstklassigem TypeScript
Convex Queries sind TypeScript-Funktionen, die automatisch neu ausgeführt werden, wenn sich zugrunde liegende Dokumente ändern. Das Client-SDK abonniert via WebSocket und aktualisiert die UI bei Änderung – die Reaktivität mit der geringsten Reibung, die ich je für B2B-SaaS ausgeliefert habe.
Schema-as-Code mit Migrations
Convex Schema-Definitionen sind TypeScript-Dateien, die zu einem validierten Schema mit erstklassigen Migrations kompilieren. Schreiben Sie v.string() und Convex erzwingt es bei jedem Write; gleiche DX wie Drizzle ORM, aber mit eingebauter Reaktivität.
Ehrliche Positionierung
Convex ist kein universeller Cache oder eine universellen Queue. Nutzen Sie es für die „Shared Workspace State"-Schicht; verwenden Sie es nicht für „Rate-Limit-Counter bei jedem Request" – dieses Pattern gehört auf Upstash.
Wo Convex verliert
- Schmales Reactive-Document-Modell. Convexs Storage-Modell nimmt Dokumente an, die selten relativ zu Lesezugriffen ändern. Hot-Key-Workloads (Leaderboard-Counter) sind die falsche Form.
- Vendor Lock-in. Convex ist seine eigene Runtime; Portierung weg bedeutet Neuschreiben der reaktiven Schicht. Die D1 Reactive Patterns, die ich anderswo nutze, sind mehr Aufwand, aber portabel auf plain Workers.
- Kosten skalieren mit Funktionsaufrufen. Die Convex-Rechnung wächst linear mit Funktionsaufrufen; in Ordnung für Read-heavy Reaktive Apps, nicht für Write-heavy.
Echte Preismathematik bei 3 Workload-Formen
Drei Produktiv-SaaS-Apps, drei Workload-Formen, sechs Monate Abrechnungsdaten pro Tool.
Cache-heavy (50k Anfragen/Tag, 5k Lesezugriffe/Sekunde Spitzenlast)
| Posten | Berechnung | Monatlich |
|---|---|---|
| Upstash Pay-as-you-go | 13M Reads × $0,20/100k + 1,3M Writes × $0,20/100k + 100MB Storage | $28,60 |
| Cloudflare Workers | 1,5M Anfragen (innerhalb der 10M kostenlos) | $5,00 |
| Gesamt | $33,60 |
| Posten bei Redis Cloud stattdessen | Berechnung | Monatlich |
|---|---|---|
| Redis Cloud Essentials 1GB Shard | $5/Monat Minimum + 2GB Egress × $0,09/GB | $5,18 |
| Hyperdrive Caching | Reduziert Reads auf ~2M von Workers | $5,00 |
| Gesamt | $10,18 |
Redis Cloud sieht hier günstiger aus – aber jeder Read von Workers benötigt einen frischen TLS-Handshake (~80ms vs Upstash HTTP ~12ms p50). Bei 5k Lesezugriffen/Sekunde ist die Latenzsteuer auf Redis Cloud die echten Kosten; meine größte App ist von Redis-Cloud-Cache auf Upstash migriert – wegen Latenz, nicht wegen Abrechnung.
Queue-heavy (1M Enqueue/Tag, 50k Queue-Tiefe)
| Posten | Berechnung | Monatlich |
|---|---|---|
| Redis Cloud Essentials 2GB | $10/Monat + 5GB Egress × $0,09/GB | $10,45 |
| Hyperdrive Queries | 30M Queries × inkludiert | $0,00 |
| Gesamt | $10,45 |
| Posten bei Upstash QStash stattdessen | Berechnung | Monatlich |
|---|---|---|
| Upstash QStash | 30M Messages × $0,50/M = $15 + Retries | $18,00 |
| Workers Requests | 30M × $0,30/M = $9 | $9,00 |
| Gesamt | $27,00 |
Redis Cloud gewinnt bei Queue-heavy um ~$17/Monat. Wählen Sie QStash, wenn Sie den Redis-Streams-Operational-Overhead nicht tolerieren können; wählen Sie Redis Cloud, wenn Dauerhaftigkeit und Durchsatz dominieren.
Reaktiver State (5k gleichzeitige Abonnenten, ~3M Doc-Reads/Tag)
| Posten | Berechnung | Monatlich |
|---|---|---|
| Convex Team Plan | $25/Monat + Funktions-Overage + Storage + Bandwidth | $32,00 |
| Gesamt | $32,00 |
| Posten bei Workers + Durable Objects stattdessen | Berechnung | Monatlich |
|---|---|---|
| Workers Paid | $5/Monat + 3M Funktionsaufrufe | $5,00 |
| Durable Objects | 5k × $0,15/M Requests × 30 = ~$2,25 + Storage | $7,50 |
| D1 | Innerhalb des kostenlosen Tiers | $0,00 |
| Gesamt | $12,50 |
Workers + Durable Objects ist günstiger, aber die Convex DX bei reaktiven Queries ist 3-5× schneller zu bauen; für einen Solo-Founder ist diese DX-Zeit der echte ROI.
Entscheidungsmatrix: Welches Tool für welche Schicht
| Workload-Form | Empfohlenes Tool | Warum |
|---|---|---|
| Edge-Cache, HTTP-first, niedrig-mittlere Read-Rate | Upstash | HTTP API, Preis pro Command, kein TLS-Handshake |
| Edge-Cache, sehr Hot Path (>10k Reads/Sekunde) | Upstash mit Pipelining ODER Redis Cloud + Hyperdrive | HTTP-Overhead pro Command minimieren |
| Dauerhafte Queue, hoher Durchsatz, Replay/Consumer-Group-Bedarf | Redis Cloud | Streams + Consumer Groups + Durchsatz-Ceiling |
| At-Least-Once HTTP-Queue, einfache Retry-Semantik | Upstash QStash | HTTP-nativ, geringere Reibung |
| Reaktiver Document-State, TypeScript Schema-as-Code | Convex | Erstklassige Reaktivität, schnellste DX-Zeit |
| Hot-Key-Counter, Leaderboards, Rate-Limit-at-Edge | Upstash (INCR + EXPIRE) | Latenz pro Command ist akzeptabel; HTTP ist in Ordnung |
| Multi-Region Active-Active, CRDT-Bedarf | Redis Cloud (Redis 7+ Active-Active) | CRDT-Support ist first-party |
| Shared Workspace State, B2B-SaaS | Convex | Reactive Queries eliminieren Polling-Code |
Upstash für Edge-Cache + einfache HTTP-Queue, Redis Cloud für hochperformante dauerhafte Queue, Convex für reaktiven Document-State.
Wie TanStack Ship alle drei kombiniert
TanStack Ship liefert eine TanStack-Start-App aus, die alle drei Tools in ihrer kanonischen Rolle nutzt: Upstash Redis für Edge-Cache, QStash für HTTP-Queue und Convex für die Workspace-Reactive-Schicht (optional). Die Preisseite listet auf, was enthalten ist.
Upstash Cache-Wrapper in TanStack Ship
// src/lib/cache.ts — Upstash cache wrapper
import { Redis } from "@upstash/redis/cloudflare";
interface Env {
UPSTASH_REDIS_REST_URL: string;
UPSTASH_REDIS_REST_TOKEN: string;
}
export function getCache(env: Env) {
return new Redis({
url: env.UPSTASH_REDIS_REST_URL,
token: env.UPSTASH_REDIS_REST_TOKEN,
});
}
export async function cached<T>(
env: Env,
key: string,
ttlSeconds: number,
loader: () => Promise<T>
): Promise<T> {
const cache = getCache(env);
const hit = await cache.get<T>(key);
if (hit !== null) return hit;
const fresh = await loader();
await cache.set(key, fresh, { ex: ttlSeconds });
return fresh;
}
Redis Streams Enqueue von einem Worker
// src/lib/queue.ts — Redis Streams producer via Hyperdrive
interface Env {
HYPERDRIVE: Hyperdrive;
}
export async function enqueueEvent(env: Env, payload: object) {
await env.HYPERDRIVE.exec({
sql: "XADD events:stream * payload ?",
params: [JSON.stringify(payload)],
});
}
Der Workers Fullstack SSR Deep-Dive behandelt Hyperdrive + Workers. Der Workers-Queues Deep-Dive behandelt die Cloudflare-native Alternative.
FAQ
Ist Upstash produktionsreif für hochperformante SaaS?
Ja für HTTP-freundliche Edge-Cache-Schichten. Für >100k Ops/Sekunde dauerhaften Durchsatz gewinnt Redis Clouds höheres Ceiling. Meine Apps haben über 8 Monate Upstash Status-Zuverlässigkeit ohne Vorfall gemessen.
Kann Convex Upstash oder Redis Cloud ersetzen?
Nein – sie lösen verschiedene Probleme. Convex ist eine reaktive Document-Plattform; Upstash und Redis Cloud sind Cache/Queue-Primitive. Sie würden Convex nicht für einen Rate-Limit-Counter verwenden, noch Upstash für Shared-Workspace-Reaktivität.
Was ist mit Redis 8 / Valkey?
Redis 8 erscheint später 2026 mit Vector- und JSON-Features. Valkey ist der Open-Source-Fork, den einige Redis-Cloud-Konkurrenten verwenden. Evaluieren Sie neu, wenn Redis 8 GA erreicht.
Wie migriere ich zwischen diesen Tools?
Cache-Migration ist am einfachsten – Namespace neu keyen, Client tauschen. Queue-Migration ist schwieriger wegen Consumer-Group-Semantik; machen Sie es an einem Low-Traffic-Tag. Convex-Migration ist am schwierigsten; planen Sie 2-4 Wochen ein.
Funktioniert Convex auf Cloudflare Workers?
Convex ist seine eigene Runtime mit erstklassigen Clients. Der Convex-Client läuft innerhalb eines Workers, aber Dokumente leben auf Convexs Infrastruktur. TanStack Ship Wiring nutzt Convex für Workspace-State und Workers + D1 für den Rest.
Was ist am günstigsten bei niedrigem Traffic?
Upstash. Preis pro Command + kein Minimum-Commitment bedeutet eine Workload von 100k Commands/Tag kostet ~$0,30/Monat. Redis Cloud Essentials startet bei $5/Monat Minimum; Convex hat ein kostenloses Dev-Tier und einen Team-Plan ab ~$25/Monat.