У нас есть файловый сервер Windows 2008, который периодически отключается. Когда он не работает, веб-серверы Windows 2003 накапливают запросы с ожидающими файловыми операциями.
Я провел несколько тестов с использованием ColdFusion и заметил, что если вы запрашиваете файл на заведомо неработающем или несуществующем сервере, время ожидания первоначального запроса составляет 15 секунд. Последующие запросы быстро завершаются неудачей в течение следующих 10 секунд или около того. Затем следует еще один тайм-аут 15 секунд, и шаблон повторяется.
Я хотел бы настроить как максимальное количество времени, которое может занять запрос к несуществующему серверу (15 секунд), так и время кэширования того факта, что сервер не работает (10 секунд).
Это что-то можно настроить на клиентах Windows?
Изменить: я получил снимок из Wireshark, показывающий пакеты службы именования Netbios:
No. Time Source Destination Protocol Info
90 2.184614 172.27.8.7 172.27.8.255 NBNS Name query NB CHASE-IE<20>
97 2.920946 172.27.8.7 172.27.8.255 NBNS Name query NB CHASE-IE<20>
106 3.671325 172.27.8.7 172.27.8.255 NBNS Name query NB CHASE-IE<20>
136 12.936379 172.27.8.7 10.0.2.15 NBNS Name query NBSTAT *<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>
140 14.436181 172.27.8.7 10.0.2.15 NBNS Name query NBSTAT *<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>
142 15.936134 172.27.8.7 10.0.2.15 NBNS Name query NBSTAT *<00><00><00><00><00><00><00><00><00><00><00><00><00><00><00>
Вы можете увидеть 15 секунд, которые занимает первоначальный запрос. Похоже, он выполняет широковещательную рассылку UDP на всю подсеть (172.27.8.255). Он не получает ответа, а затем каким-то образом получает правильный IP (10.0.2.15), возможно, через DNS. Затем он тратит несколько секунд на тайм-аут для этого сервера (он не в сети).
Мне удалось сократить начальный период ожидания с 15 до 2 секунд, поместив сервер в lmhosts.
Тайм-аут может поступать из разных источников. Сначала вы должны использовать что-то вроде TcpView чтобы определить, на каком порту тратится больше всего времени.