Иногда на одном из моих веб-серверов svchost.exe
работает около 60-80%, используя службу DNS-клиента. Это на компьютере с веб-сервером Windows 2008 (полностью зашитым), обрабатывающим около 10 миллионов просмотров страниц в день и около 5 миллионов уникальных пользователей в месяц.
Иногда я вижу, что он работает на одном из двух серверов в моей ферме, обрабатывая тот же объем трафика, что и другие машины, поэтому я думаю, что его можно отключить ... Имейте в виду, что сервер, на который он влияет, работает близко к 90% ЦП, а остальные 15%.
Теперь я знаю, что он кэширует данные разрешения имен, но нужно ли делать это за эти деньги? Я провел небольшое исследование, и на этот счет есть раздельные рекомендации, поэтому я спрашиваю вас, ребята :) Спасибо!
Вот скриншоты загрузки процессора:
Ненавижу это предлагать, но проявляет ли сервер ту же проблему после перезапуска, или он просто медленно деградирует с течением времени?
То же самое замечание Петра Ивана о больших файлах хостов, вызывающих DnsCache сервис съедает CPU.
Кажется, сейчас это мой стандартный ответ, но я знаю, что происходит с помощью Process Monitor.
Я бы также рассмотрел возможность переноса DnsCache в собственный экземпляр SVCHOST (для тестирования / изоляции):
tasklist /fi "imagename eq svchost.exe" /svc
sc config dnscache Type= own
sc stop dnscache
sc start dnscache
tasklist /fi "imagename eq svchost.exe" /svc
Отключение клиентской службы DNS приведет к не отключить поиск DNS. Стек по-прежнему знает, как выполнять поиск по DNS. Не верите? Попытайся.
Теперь одной из возможных причин высокой скорости запросов DNS на вашем веб-сервере может быть поиск DNS, связанный с регистрацией HTTP-запросов. Отключить ведение журнала источника клиентских запросов по DNS-имени.
Служба DNS-клиента служит в основном как DNS-кеш, как предполагает его служебное имя «DNS Cache». Отключение этого параметра может замедлить разрешение имен DNS.
Обычный просмотр веб-страниц не должен пострадать. Но на ваших веб-серверах могут быть некоторые процессы, которые полагаются на разрешение имен DNS. Тогда их время отклика может увеличиться только из-за повторяющихся DNS-запросов к вашему DNS-серверу.
По моему опыту, высокая загрузка ЦП службой DNS-клиента может быть вызвана большим hosts
файл. Добавление сетевых адаптеров или изменение их настроек может привести к очистке DNS-кеша, а затем к увеличению загрузки ЦП.
Отключение клиентской службы DNS приведет к тому, что сервер вообще не сможет разрешать какие-либо запросы DNS. Это плохая идея, ИМХО. Для начала это означает, что, как минимум, сервер не сможет выполнять какие-либо обновления Windows. Но также почти все, что делает любой компьютер, связанный с сетью любого рода, требует DNS-запросов для правильной работы.
Кроме того, если ваше веб-приложение взаимодействует с другими службами или веб-сайтами, оно перестанет работать.
Я предполагаю, что активность службы клиента DNS связана с ведением журнала IIS; попробуйте временно отключить это и посмотреть, решит ли это проблему. Если это так, то вы знаете, в чем заключается ваша настоящая проблема.