15 Ekim 2015 Perşembe

IIS Sunucularında yoğunluk sırasında Windows işletim sisteminin TCP Soket sınırlaması sorunu

Sorun :İşletim sisteminde default tanımlı soket açma aralığının düşük olması (sorun yaşadığımız makinada 6000 civarıydı) ve delay time’ın yine default olarak 240 sn olması sebebiyle istekler TCP Soket aralığını dolduruyordu. Dolması sonrasında gelen isteklerin fazlası işletim sistemi tarafından daha en başta makineye erişmeden bloklanıyor ve baktığınızda makinanın CPU’sunun gayet düşük, RAM’inin fazla kullanılmadığını görüyor ve sorunun sunucu kaynaklı olmadığını düşünüyorsunuz. Bu sırada netstat komutu ile TIME_WAIT’lerin sayısına bakıp, netsh komutu ile (netsh int ipv4 show dynamicportrange tcp) mevcut soket aralığının dolup dolmadığı konusunda bilgi sahibi olabilirsiniz.

Çözüm: Aşağıdaki iki ayar ile hem delay time değerini düşürüyor, hem de soket aralığını arttırmamız gerekiyor.

1 – Aşağıdaki parametreyi ekliyoruz, biz 30 sn olarak düzenledik :

2 – Aşağıdaki komut ile dinamik tcp range’ini arttırıyoruz:
netsh int ipv4 set dynamicportrange tcp start=32767 num=32768

Hiç yorum yok:

Yorum Gönder