Я управляю кодом и развертыванием сайта ASP.net на выделенном сервере. Windows 2008-64 R2, 8 ГБ ОЗУ, двухъядерный. Это специальный сайт интрасети, на который никогда не бывает большого трафика. Большинство проблем с производительностью, с которыми мы сталкиваемся, связаны с проблемами памяти на сервере (приложение иногда должно импортировать и интерпретировать данные из файлов Excel размером более 1 ГБ или обрабатывать большие объемы данных для вставки в БД) или в БД (из вышеупомянутого вставки, иногда вместе с блокировкой таблицы из-за того, что данные обновляются одновременно с вставками в ту же таблицу).
Несколько дней назад был шестичасовой период времени, когда мониторы процессора на сайте были более 95% за весь период. Веб-сайт не реагировал на запросы, и временами доступ к сайту был невозможен. Дважды в минуту я получал электронные письма от нашей службы мониторинга об устойчивом чрезмерном использовании процессора, но, за исключением пары предупреждений, которые не повторялись, не было никаких проблем с нехваткой памяти. А с точки зрения пользователей поступали отчеты, указывающие на то, что пропускная способность загрузки была намного ниже, чем обычно.
Я проверил логи Windows - ничего необычного. Проверил свои внутренние журналы на сайте на предмет любой активности на сайте, которая могла бы это объяснить, а также ничего, что могло бы объяснить плохое поведение (или даже что-то, что могло бы объяснить нехватку памяти). Так что мне все еще предстоит искать причину этого серверного события (оно прояснилось само по себе, очень внезапно).
Единственное другое объяснение, которое я могу придумать, - это DDOS-атака. Весь сайт защищен паролем, но я бы подумал, что если бы за это время было сделано достаточно подключений к домашней странице, это привело бы к симптомам, о которых я знаю: устойчиво высокой загрузке процессора (без какого-либо воздействия на память, поскольку страница входа не является динамической) и уменьшила пропускную способность в обоих направлениях.
Могу ли я попытаться проверить, могло ли это быть причиной или нет? Какие-либо журналы по умолчанию на сервере Windows или IIS, которые записывают такую информацию? Есть ли какая-нибудь другая причина, которая могла бы привести к описанным мною симптомам?
Хммм ... обычно информация о DDoS-атаках обнаруживается на границе сайтов, выходящих в Интернет, так что ... брандмауэр, который их защищает. Я не знаю, что вы столкнетесь с серьезными препятствиями при ведении журнала из ОС, если только это не вызовет каких-либо серьезных проблем с конфликтом ресурсов. В IIS может что-то быть, и, как я уже сказал, вы обнаружите, что это был не DDoS, а что-то конкретное приложение, которое вызвало зависание. Было бы хорошо, если бы вы получили какое-то ведение журнала процессов и их использования ресурсов.