Modelling Postgres Performance Degradation on Burstable Cloud Instances
summary
Uses a discrete event simulation to compute the exact saturation point of burstable Postgres on B-series/T-series instances, modeling the token‑bucket CPU credits, M/M/c/K queuing and connection pools. Implements an open‑source SNA library (C#, .NET 10) with OpenTelemetry and Grafana dashboards, and predicts CPU credit drain in under 1 minute from inputs (Azure B2ms: base 30%, initial 60 credits, +36/hr, max 864; burn ~2/min). Demo finds a ~5× query slowdown at depletion and shows pool size 10 is near‑optimal for the workload modeled.
AI-written summary · about
chapters (14)
- 0:00Music & introduction
- 1:51How CPU credits and bursting work
- 3:48Token bucket explained simply
- 5:43The hidden risk: CPU credit depletion
- 7:48Overprovisioning vs load testing vs simulation
- 9:00Simulation as a fast decision filter
- 10:03Discrete event simulation fundamentals
- 11:47Building the simulation library in .net
- 13:34Demo: predicting CPU credit drain & failures
- 15:53Finding the right connection pool size
- 18:11Azure vs AWS burstable instance differences
- 19:55Is simulation overkill for real systems?
- 21:34Observability and real-time insights with grafana
- 22:45Final takeaways: faster, data-driven testing
related talks
43mPostgreSQL in the cloud: Theory and Practice
36mAutomated Performance Testing of Postgres
36mBest Practices in PostgreSQL Tuning: Navigating Key Performance Bottlenecks in the Cloud
31mDemanding the impossible rigorous database benchm
14mBurstable Cloud Block Storage with Data Processing Units
51mScaling Postgres to the next level at OpenAI
56mLightning Talks
25mScaling Postgres to the next level at OpenAI
