Problem neden önemlidir?
Page fault artışı, çalışma kümesinin belleğe sığmadığını veya erişim deseninin değiştiğini gösterebilir. Sayaçların anlamı işletim sistemi ve MongoDB derlemesine göre değişebildiği için tek başına yorumlanmamalıdır.
Nasıl teşhis edilir?
Varsa serverStatus().extra_info.page_faults değerini zaman içinde izleyin. İşletim sistemi major fault, disk gecikmesi ve WiredTiger cache ölçümleriyle çapraz kontrol yapın.
page_faults alanı her platformda bulunmayabilir. Geniş cache nesnesi yalnızca etkileşimli incelemede gerektiğinde açılmalıdır.
const s = db.serverStatus();
({pageFaults: s.extra_info && s.extra_info.page_faults, cache: s.wiredTiger && s.wiredTiger.cache})Güvenli çözüm yaklaşımı
Sorgu ve indeks erişim desenlerini gözden geçirerek gereksiz disk okumalarını azaltın. Kapasite değişikliğini yalnızca bellek ve I/O kanıtları aynı nedeni gösteriyorsa değerlendirin.
Sürekli monitoring neden gerekir?
Sürekli izleme, sayaç artışını dağıtım veya trafik değişiklikleriyle eşleştirir. moon düşük ek yükle MongoDB ölçümlerini izleyip Slack, PagerDuty ve webhook uyarıları yönlendirebilir.
Sık sorulan sorular
Page fault sayacındaki her artış disk sorunu mudur?
Hayır, bazı fault türleri normal bellek yönetiminin parçasıdır. Major fault ve disk gecikmesi gibi işletim sistemi ölçümleri doğrulama sağlamalıdır.
moon bu konuda nasıl yardımcı olur?
moon, SQL Server, PostgreSQL ve MongoDB sinyallerini sürekli izleyerek problemi anlık bir kontrolden ziyade zaman içindeki davranışıyla değerlendirmeye yardımcı olur.