Можно отключить службу DNS-клиента на веб-сервере Windows 2008 из-за высокой загрузки ЦП?
Изредка на одном из моих веб-серверов svchost.exe
работает около 60-80% при запуске службы клиента DNS. Это на компьютере с веб-сервером Windows 2008 (полностью исправленным), который обрабатывает около 10 миллионов просмотров страниц в день и около 5 миллионов уникальных пользователей в месяц.
Иногда я вижу, что он работает на одном из двух серверов в моей ферме, обрабатывая тот же объем трафика, что и другие машины, поэтому я думаю, что можно отключить его... Помните, что сервер, на котором он работает, работает близко к 90% CPU, а остальные на 15%.
Теперь я знаю, что он кэширует данные разрешения имен, но нужно ли это делать за этот счет? Я провел некоторое исследование, и есть раздельные рекомендации по этому вопросу, поэтому я прошу вас, ребята:) Спасибо!
Вот скриншоты загрузки процессора:
4 ответа
Я терпеть не могу предлагать это, но возникает ли на сервере такая же проблема после перезапуска, или он просто медленно ухудшается со временем?
То же самое замечание Питера Ивана о больших файлах хостов, приводящих к тому, что служба DnsCache загружает процессор.
Кажется, в настоящее время я отвечаю на свои вопросы, но не забывайте о том, что происходит с помощью 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-запросы вообще. Это не очень хорошая идея, ИМХО. Для начала это означает, что сервер как минимум не сможет выполнять обновления Windows. Кроме того, почти все, что делает любой компьютер, включая сетевое взаимодействие, требует DNS-запросов для правильной работы.
Кроме того, если ваше веб-приложение взаимодействует с другими службами или веб-сайтами, оно перестает функционировать.
Я предполагаю, что активность службы DNS-клиента связана с ведением журнала IIS; попробуйте временно отключить это и посмотрите, разрешит ли это это. Если это так, то вы знаете, где ваша настоящая проблема.
Служба DNS-клиента служит главным образом кешем DNS, как следует из названия службы "DNS-кеш". Отключение может замедлить разрешение имен DNS.
Обычный опыт просмотра не должен пострадать. Но на ваших веб-серверах могут быть процессы, основанные на разрешении имен DNS. Тогда их время отклика может увеличиться только из-за повторных DNS-запросов к вашему DNS-органу.
По моему опыту, высокая загрузка ЦП службой DNS Client может быть вызвана большим hosts
файл. Добавление сетевых карт или изменение их настроек может привести к сбросу кеша DNS, а затем к увеличению загрузки процессора.