Назад | Перейти на главную страницу

Ведение журнала IIS6 перегружает мои серверы

У нас есть серьезная проблема с нашими веб-серверами с балансировкой нагрузки. Если у нас включено ведение журнала IIS для наших крупнейших веб-сайтов, это так сильно тормозит работу серверов, что время ожидания большинства наших запросов истекает. Как только я выключил логирование, сервер снова заработал нормально. Каковы некоторые вероятные решения, позволяющие вести журнал нашего веб-трафика и не иметь этого узкого места?

У нас есть 2 виртуальных сервера VMWare с балансировкой нагрузки под управлением Windows Server 2003 и IIS 6, которые обрабатывают только наши веб-сайты / веб-трафик и ничего больше (база данных и почта находятся на разных серверах).

РЕДАКТИРОВАТЬ: Я забыл об одной проблеме: файлы сохраняются на отдельном файловом сервере, который подключен к NAS.

Если все, что вас волнует, - это фактические страницы (HTML, ASPX и т. Д.), К которым осуществляется доступ, возможно, переместите другие статические ресурсы (изображения, css, js) в отдельные папки - если они еще не разделены - а затем отключите ведение журнала для этих папок. Поскольку каждая веб-страница обычно загружает несколько других статических ресурсов, вы можете значительно снизить активность журналирования, сохраняя доступ к интересующим вас страницам.

Вы можете подумать об ограничении того, что регистрируется в IIS. Например, предположим, что вам не нужно регистрировать доступ к каждому файлу изображения, файлу сценария или чему-либо еще. В IIS 6 есть возможность ограничить то, что регистрируется:

Ограничьте то, что регистрируется в IIS

и то же самое в IIS 7 немного отличается:

Ограничьте то, что регистрируется в IIS 7

Я реализовал это на своем веб-сервере, удалив изображения, сценарии и некоторые другие обработчики, и заметил, что размер журнала был примерно на 75% меньше, чем раньше. Очевидно, что при этом вы не можете видеть записи в файлах журнала для исключенных элементов, но меня в основном интересовал доступ к странице.

Регистрируется ли сервер на том же диске, что и сайты, с которых обслуживаются? Вы можете проверить, каково ваше среднее время ввода-вывода на диске при включенном ведении журнала. Перенос записи на другой диск может помочь ускорить процесс.

Я читал в комментариях, что вы входите в SAN. Чтобы убедиться, что характеристики задержки SAN являются причиной проблем, попробуйте выполнить дневной журнал на жестком диске.

Вам следует внимательно изучить свое хранилище, возможно, его производительность записи недостаточна. Вы также можете проверить, какой уровень RAID используется. Если это RAID 5, вам следует подумать о переходе на более быстрый массив, такой как RAID 10, 01, 10E. Вы также можете подумать о создании отдельного тома RAID только для журналов, чтобы он не мешал работе IIS.

Кроме того, вы, вероятно, путаете NAS и SAN. Это разные технологии с точки зрения производительности. Если вы действительно используете NAS, вам следует дважды подумать, так как эта технология не всегда подходит для высокой нагрузки ввода-вывода.