HLD-129·Messaging & Queues
Easy · 500 ptsGlobal Podcast RSS Episode Catalog & Update Notifier
Design a podcast directory ingestion and episode catalog API that ingests newly published RSS episodes and serves show metadata to mobile apps.
Max p99
≤ 50 ms
Availability
≥ 99.5%
Budget
≤ $2,550
Functional Requirements
- FR-1POST /shows/{show_id}/episodes — Ingests newly detected RSS episode metadata and enqueues notifications.
- FR-2GET /shows/{show_id}/episodes — Returns paginated episode list for mobile podcast players.
- FR-3PATCH & DELETE /shows/{show_id}/episodes — Updates, revokes, or deletes show_id entries with bounded TTL or explicit cache/index invalidation.
- FR-4Must absorb top-of-hour release spikes and survive primary database failure.
Workload Profile
Baseline App Traffic16,000 Read RPS / 2,000 Episode Ingest RPS
Morning Commute Drop46,000 Read RPS / 6,000 Write RPS
Active Working Set14 GB hot show catalogs
Traffic DistributionZipfian skew on top-100 chart show_id feeds
Consistency Model
Eventual episode listing visibility (< 5s) acceptable; ingested episodes durably persisted.
Solutions Locked
Sign in and either achieve AC or complete 3 official submissions on this question to inspect community diagrams and writeups.
Loading solutions...
Submission History (0)Select to replay
No submissions yet
Click Submit in the top bar to evaluate against all 7 judge cases and save each run here.
Design Write-up
0 boxes · 0 edges
0 words