Data Infrastructure & Analytics
Performance isolation in a multi-tenant database environment

Performance isolation in a multi-tenant database environment

8/26/2022 · Justin Kwan, Vignesh Ravichandran

What this post added

This post details the challenges and solutions for performance isolation in Cloudflare's multi-tenant Postgres clusters. It describes the problem of tenants contending for shared resources (CPU, memory, disk I/O, database connections) leading to throughput and latency degradation. The post outlines previous manual solutions like connection limits and introduces a new solution involving gateway concurrency throttling at the PgBouncer layer, including runtime commands and open-source contributions. It also explores future solutions like congestion avoidance inspired by TCP Vegas and tenant resource quotas to proactively manage performance and prevent resource starvation.

Read the original post ↗