Performans testi yapılırken, test edilen sistem sayfası basit ve iyi performansa sahipse, basın yetersiz tcp bağlantısı almasına ve aşağıdaki hatalara yol açmasına neden olur: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\TcpTimedWaitDelay to 30 ve HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\MaxUserPort ile 65534 ve makineyi yeniden başlatmak Daha fazla bilgi için readme.doc dosyasına bakınız Baidu araması yoluyla en çok ortaya çıkan yöntem, TimedWaitDelay ve MaxUserPort'un iki değerini değiştirmektir; bunlar TimedWaitDelay'i değiştiren nispeten küçük noktalardır ve bu değerler gerçek duruma göre belirlenebilir. Aynı zamanda, MaxUserPort'un değeri daha büyük olacak şekilde değiştirilir, ancak makineyi değiştirip yeniden başlattıktan sonra sorun devam eder. [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \tcpip \parametreler] TcpNumConnectionsSearch = 0x00fffffe (Varsayılan = 16,777,214) Yukarıdaki kayıt bilgileri, tek bir makinede izin verilen maksimum TCP bağlantısını yapılandırır; bu varsayılan olarak 16M'dir. Bu sayı büyük görünmektedir ve maksimum bağlantı sayısını sınırlayan tek koşul bu değildir; TCP bağlantısına yapılan maksimum bağlantı sayısını sınırlayan başka koşullar da vardır. Maksimum dinamik port sayısı Bir TCP istemcisi ve sunucu bağlandığında, istemciye dinamik bir port atanmalıdır; bu port varsayılan 1024-5000 aralığında atanan, bu da varsayılan olarak istemcinin aynı anda 3977 soket bağlantısı başlatabileceği anlamına gelir. Bu dinamik portun kapsamını ayarlamak için aşağıdaki kayıt defterini değiştirebiliriz [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \tcpip \parametreler] MaxUserPort = 5000 (Varsayılan = 5000, Max = 65534) Maksimum TCB sayısı Sistem, her TCP bağlantısına bir TCP kontrol bloğu (TCP kontrol bloğu veya TCB) atar; bu blok, TCP bağlantısının bazı parametrelerini önbelleklemek için kullanılır ve her TCB'nin 0,5 KB sayfa havuzu ve 0,5 KB sayfa havuzu dışı bir sayfa havuzu ayırması gerekir; bu da her TCP bağlantısının 1KB sistem belleği kaplaması anlamına gelir. Bir sistemdeki maksimum TCB sayısı, aşağıdaki kayıt listesi ayarlarıyla belirlenir [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \tcpip \parametreler] MaxFreeTcbs = 2000 (Varsayılan = RAM bağımlı, ancak alışılmış Pro = 1000, Srv=2000) Server dışı sürümler için MaxFreeTcbs'nin varsayılan değeri 1000'dir (64M'den fazla fiziksel bellek) Server versiyonu, varsayılan olarak 2000 modelidir. Bu, varsayılan olarak, Server sürümlerinin aynı anda 2000'e kadar TCP bağlantısı kurup sürdürebileceği anlamına gelir. TCB hash tablolarının maksimum sayısı TCB, bir hash tablosu aracılığıyla yönetilir ve aşağıdaki kayıt ayarları bu hash tablosunun boyutunu belirler HKEY_LOCAL_MACHINE \System \CurrentControlSet \services \tcpip \parametreler] MaxHashTableSize = 512 (Varsayılan = 512, Aralık = 64-65536) Bu değer, sayfa havuzuna tahsis edilen bellek miktarını gösterir; yani MaxFreeTcbs = 1000 ise, sayfa havuzundaki bellek miktarı 500KB'dir O zaman MaxHashTableSize 500'den büyük olmalı. Sayı ne kadar büyükse, hash tablosu o kadar yedekli olur ve her seferinde TCP bağlantılarını tahsis edip bulmak o kadar kısa sürer. Bu değer 2'nin kuvveti olmalı ve maksimum 65536 olmalıdır. MaxUserPort = 65534 (Ondalık) MaxHashTableSize = 65536 (Ondalık) MaxFreeTcbs = 16000 (Ondalık) Burada MaxHashTableSize'in MaxFreeTcbs'den 4 kat büyük olarak yapılandırıldığını görebiliriz ve bu da TCP kurulum hızını büyük ölçüde artırır. Ekte kayıt formu dosyası bulunmaktadır:
连接数.reg
(280 Bytes, İndirme sayısı: 2)
|