När man gör prestandatestning, om den testade systemsidan är enkel och har god prestanda, kommer det att leda till att pressen får otillräckliga tcp-länkar och orsakar följande fel: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\TcpTimedWaitDelay till 30 och HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\MaxUserPort till 65534 och starta om maskinen Se readme.doc-filen för mer information Det mest introducerade genom Baidu-sökning är att modifiera de två värdena TimedWaitDelay och MaxUserPort, som är relativt små punkter som ändrar TimedWaitDelay, vilket kan bestämmas utifrån den faktiska situationen. Samtidigt ändras värdet på MaxUserPort till att bli större, men efter att maskinen modifierats och startats om kvarstår problemet. [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters] TcpNumConnectionsSearch = 0x00fffffe (Standard = 16 777 214) Ovanstående registerinformation konfigurerar det maximala antalet TCP-anslutningar som tillåts på en enskild maskin, vilket är 16M som standard. Detta antal verkar stort, och detta är inte det enda villkoret som begränsar det maximala antalet anslutningar, det finns andra villkor som begränsar det maximala antalet anslutningar till en TCP-anslutning. Maximalt antal dynamiska portar När en TCP-klient och server ansluter måste klienten tilldelas en dynamisk port, som är tilldelad i standardintervallet 1024-5000, vilket innebär att klienten som standard kan initiera upp till 3977 socketanslutningar samtidigt. Vi kan ändra följande register för att justera omfattningen av denna dynamiska port [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters] MaxUserPort = 5000 (Standard = 5000, Max = 65534) Maximalt antal TCB:er Systemet tilldelar ett TCP-kontrollblock (TCP-kontrollblock eller TCB) till varje TCP-anslutning, som används för att cachelagra vissa parametrar för TCP-anslutningen, och varje TCB måste tilldela 0,5 KB sidpool och 0,5 KB icke-sidpool, vilket innebär att varje TCP-anslutning kommer att uppta 1 KB systemminne. Det maximala antalet TCB:er i ett system bestäms av registerinställningarna nedan [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters] MaxFreeTcbs = 2000 (Standard = RAM-beroende, men vanligt Pro = 1000, Srv=2000) För icke-serverversioner är standardvärdet för MaxFreeTcbs 1000 (mer än 64 miljoner fysiskt minne) Serverversionen, detta är standard 2000. Detta innebär att serverversioner som standard kan upprätta och underhålla upp till 2000 TCP-anslutningar samtidigt. Maximalt antal TCB-hashtabeller TCB hanteras via en hashtabell, och följande registerinställningar bestämmer storleken på denna hashtabell HKEY_LOCAL_MACHINE \System \CurrentControlSet \services \Tcpip \Parameters] MaxHashTableSize = 512 (Standard = 512, Range = 64-65536) Detta värde anger mängden minne som tilldelats sidpoolen, det vill säga, om MaxFreeTcbs = 1000 är mängden minne i sidpoolen 500 KB Då borde MaxHashTableSize vara större än 500. Ju större siffran, desto mer redundant blir hashtabellen, och desto kortare tid tar det att allokera och hitta TCP-anslutningar varje gång. Detta värde måste vara en potens av 2 och maxvärdet är 65536. MaxUserPort = 65534 (decimal) MaxHashTableSize = 65536 (decimal) MaxFreeTcbs = 16000 (decimal) Här kan vi se att MaxHashTableSize är konfigurerad att vara fyra gånger större än MaxFreeTcbs, vilket kraftigt ökar TCP-etableringshastigheten. Bifogat finns registreringsformuläret:
连接数.reg
(280 Bytes, Antal nedladdningar: 2)
|