dataiotech Labs
dbaguidedbaguideDBAdataxtoolsdataopsphere
Home/Terimler Sözlüğü/Connection Storm & File Descriptor
Connection Storm & File DescriptorSharding & High Availability

Connection Storm & Operating System File Descriptor Limits

Mikroservis veya Kubernetes pod'larının kontrolsüz şekilde binlerce yeni soket açmasıyla oluşan thread patlaması, bellek tükenmesi (OOM) ve işletim sistemi dosya tanıtıcısı yetersizliği krizidir.

Derin Mimari İncelemesi

MongoDB'de her istemci bağlantısı işletim sisteminde 1 adet dosya tanıtıcısı (file descriptor) ve yaklaşık 1MB yığın (stack) belleği tüketir. Pod'lar yeniden başladığında havuzlayıcı (connection pool) sınırları olmadan 10.000 bağlantı açmaya kalkarsa sunucu saniyeler içinde belleksiz kalarak OOM-killer tarafından vurulur.

Çözüm: Sunucu tarafında maxIncomingConnections sınırını güvenli tutmak, istemci havuzlarını küçültmek ve Linux ulimit -n 64000 yapılandırmaktır.

Üretim Gözlem ve Tanı Sorguları

MongoDB
db.serverStatus().connections; // current, available, totalCreated