Eşzamanlı bellek bütçesini ekleyin
Sessiz ortalamalarla değil, örtüşen süreçlerle başlayın. Örnek bir 4 GB çalışma sayfası ana makine araçları için 700 MiB, API süreçleri için 900 MiB, bir veritabanı için 1,200 MiB, bir çalışan için 500 MiB ve belirsizlik için 700 MiB ayırabilir: toplam 4,000 MiB. Bu, nominal profili neredeyse tüketir ve daha büyük bir sürüm örtüşmesi için çok az güven bırakır.
CPU talebini ölçülen işten tahmin edin
Temsili bir istek veya iş için CPU süresini ölçün, ardından tepe tamamlanma hızıyla çarpın. Örneğin, 25 ms CPU süresi × saniyede 20 istek = her saniye 500 ms CPU veya ortalama 0.5 çekirdek. Gerçekçi bir çalışan etkinken tekrarlayın ve tepeleri inceleyin; ortalamalar patlamaları, zamanlamayı ve veritabanı beklemelerini gizler.
Kısıtlama sinyallerini ayırın
| Gözlemlenen sinyal | Muhtemel sonraki kontrol |
|---|---|
| Çalıştırılabilir iş varken yüksek CPU | Sıcak yolu profillendirin, ardından daha fazla CPU ile karşılaştırın. |
| Bellek baskısı veya süreç sonlandırma | Örtüşmeyi azaltın veya ölçülen RAM ekleyin. |
| Yavaş isteklerle düşük CPU | Veritabanını, havuzu ve harici beklemeleri inceleyin. |
| Çalışanlar arttıkça kuyruk yaşı yükseliyor | Eşzamanlılığı düşürün ve paylaşılan bağımlılığı inceleyin. |
Kaynak kararını verin
Daha fazla CPU'yu yalnızca profillendirme sürekli hesaplama çekişmesi gösterdiğinde seçin. Eşzamanlı çalışma kümesi rezervden yoksunsa daha fazla RAM seçin. Paralel iş API gecikmesine veya faydalı tamamlanma oranına zarar verdiğinde eşzamanlılığı düşürün. Tetikleyici ölçümü kaydedin, ardından bir değişkeni değiştirdikten sonra aynı iş yükünü tekrarlayın.