Skip to content

Scaling Model

How a region grows — when a new cluster is added, what bounds the count, and how the load balancer resizes.

Customer Count Clusters per Region Trigger
0–250 1 Launch
250–500 2 800 pod threshold
500–750 3 Continued growth
750–1,000 4 Continued growth

Based on ~3.25 pods per customer average (1 web service + 1 DB + occasional worker/cache). Cluster soft limit is 1,000 pods; new cluster triggered at 800 for headroom.

Each cluster has: 1 Gateway, 1 DO LB, ~250 HTTPRoutes max. Routes distribute naturally across clusters so no single cluster hits Envoy Gateway's scaling limits.

Networking & quotas as a region scales: a region's clusters share one /16 VPC (§4.4), so adding clusters/customers to a region adds zero peerings — the control-plane VPC peers each regional VPC once (~12 at 12 regions, ≪ 50). Cluster count is bounded by this table's route/blast-radius limits, not DO networking; the knobs you actually turn are DO account soft-quotas (Droplets, Managed DB clusters, K8s clusters), raised via support ahead of growth (§39.3 #47).

DO Load Balancer scaling: LB size units (1–200) controlled by Starbase via desired state. Shuttle patches the Envoy Gateway Service annotation (do-loadbalancer-size-unit). DO CCM handles the actual resize API call.


Cross-references

The per-region VPC and IP plan → §4.4 · cluster topology → Cluster Topology · the load-balancer lifecycle → §34 · HTTPRoute naming (per-cluster route count) → §20.2 · DO account-quota work → §39.3. Canonical map: Canonical Sources.