1K'dan 10K RPS'ye Karmaşıklık Patlaması
Saniyede 1K'dan 10K'ya isteği ölçeklendirmek 10 kat daha zor değildi. 100 kat daha zordu.
1K RPS'de ne çalıştı:
- Senkron servisten servise çağrılar
- Karmaşık sorgular için veritabanı birleştirmeleri
- Örnekleme olmadan CloudWatch'a loglar
- Basit round-robin yük dengeleme
10K RPS'de ne bozuldu:
- Veritabanı bağlantı limitlerine ulaşıldı
- Senkron çağrılar basamaklı zaman aşımları yarattı
- CloudWatch maliyetleri patladı (10 kat log = 10 kat maliyet)
- Önbellekleme katmanında sıcak anahtarlar
- Ağ soketi tükenmesi
Gereken yeni desenler:
- İstek-yanıt yerine olay güdümlü
- Okuma replikaları ve bağlantı havuzu
- Log örneklemesi (hata ayıklama seviyesinde %1)
- Uçta hız sınırlaması
- Önbellek dağıtımı için tutarlı karma
İçgörü:
Her büyüklük mertebesinde farklı sorunları çözüyorsunuz. 1K için çalışan mimari 10K için çalışmaz. 10K için çalışan 100K için çalışmaz.
Ders: Ölçek testi isteğe bağlı değildir. 10 kat trafik gününüz her zayıflığı bulacaktır.