Під час тестування продуктивності, якщо перевірена сторінка системи проста і має хорошу продуктивність, це призведе до недостатньої кількості tcp-посилань і наступних помилок: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\TcpTimedWaitDelay до 30 та HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\MaxUserPort у 65534 та перезавантаження машини Дивіться файл readme.doc для отримання додаткової інформації Найчастіше через пошук Baidu є модифікація двох значень TimedWaitDelay і MaxUserPort, які є відносно невеликими точками, що змінюють TimedWaitDelay, що можна визначити відповідно до реальної ситуації. Водночас значення MaxUserPort змінюється, щоб стати більшим, але після модифікації та перезавантаження машини проблема все одно існує. [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters] TcpNumConnectionsSearch = 0x00fffffe (за замовчуванням = 16,777,214) Наведена вище інформація реєстру налаштовує максимальну кількість TCP-з'єднань, дозволених на одній машині, яка за замовчуванням становить 16M. Це число здається великим, і це не єдина умова, яка обмежує максимальну кількість з'єднань, існують й інші умови, які обмежують максимальну кількість з'єднань до TCP-з'єднання. Максимальна кількість динамічних портів Коли TCP-клієнт і сервер підключаються, клієнту має бути призначений динамічний порт, який призначений у діапазоні за замовчуванням від 1024 до 5000, тобто за замовчуванням клієнт може одночасно ініціювати до 3977 сокетних з'єднань. Ми можемо змінити наступний реєстр, щоб налаштувати обсяг цього динамічного порту [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters] MaxUserPort = 5000 (за замовчуванням = 5000, максимум = 65534) Максимальна кількість TCB Система призначає блок керування TCP (блок керування TCP або TCB) кожному TCP-з'єднанню, який використовується для кешування деяких параметрів TCP-з'єднання, і кожен TCB повинен виділяти 0,5 КБ пулу сторінок і 0,5 КБ не-пейджпулу, тобто кожне TCP-з'єднання займатиме 1 КБ системної пам'яті. Максимальна кількість TCB у системі визначається налаштуваннями реєстру нижче [HKEY_LOCAL_MACHINE \System \CurrentControlSet \Services \Tcpip \Parameters] MaxFreeTcbs = 2000 (За замовчуванням = залежить від оперативної пам'яті, але зазвичай Pro = 1000, Srv=2000) Для версій без сервера значення за замовчуванням MaxFreeTcbs становить 1000 (понад 64 млн фізичної пам'яті) Версія сервера за замовчуванням 2000. Це означає, що за замовчуванням версії сервера можуть одночасно встановлювати та підтримувати до 2000 TCP-з'єднань. Максимальна кількість хеш-таблиць TCB TCB керується через хеш-таблицю, і наступні налаштування реєстру визначають розмір цієї хеш-таблиці HKEY_LOCAL_MACHINE \System \CurrentControlSet \services \Tcpip \Parameters] MaxHashTableSize = 512 (за замовчуванням = 512, діапазон = 64-65536) Це значення вказує на обсяг пам'яті, виділеної для пулу сторінок, тобто якщо MaxFreeTcbs = 1000, обсяг пам'яті в пулі сторінок становить 500 КБ Тоді MaxHashTableSize має бути більшим за 500. Чим більша кількість, тим більш надлишковою буде хеш-таблиця, і тим менше часу потрібно на виділення та пошук TCP-з'єднань кожного разу. Це значення має бути степенем 2, а максимальна — 65536. MaxUserPort = 65534 (Десятковий) MaxHashTableSize = 65536 (Десятковий) MaxFreeTcbs = 16000 (Десятковий) Тут ми бачимо, що MaxHashTableSize налаштований так, щоб бути у 4 рази більшим за MaxFreeTcbs, що значно підвищує швидкість встановлення TCP. Додається файл реєстраційної форми:
连接数.reg
(280 Bytes, Кількість завантажень: 2)
|