Skala kanthi bertahap: read replica + caching kanggo pamaca dhisik, banjur sharding (Vitess) kanggo tulisan — lan tambahake connection pooling sadurunge apa wae, amarga iku 10x sing paling murah. Pamaca lan tulisan nyekala kanthi beda, mula aja njangkau sharding ing dina kapisan.
┌─▶ Cache (Redis) ── hit ──▶ return
App ─▶ Pool(PgBouncer/ProxySQL) miss ▼
│ ┌─▶ Read replica 1 ┐
├──── reads ─────────┼─▶ Read replica 2 ┼─ (async replication)
│ └─▶ Read replica N ┘
└──── writes ──▶ Primary ──▶ (later) Vitess shards ─▶ Primary A / Primary B
Langkah 0: connection pooling
Saben koneksi MySQL ngentekake memori lan thread. Ing lalu lintas 100x sampeyan bakal ngentekake adoh sadurunge CPU. Pooler kaya utawa nge-multipleks ewonan koneksi app dadi sawetara atus koneksi DB. Iki owah-owahan konfigurasi, dudu arsitektur ulang — lakonana dhisik.
