Счетчики производительности, диспетчер задач и инструменты анализа собственного кода рассказывают только часть истории.Чтобы глубже понять, что происходит внутри вашего приложения ASP.NET, вам нужно использовать WinDBG, SOS и ADPlus.
Тесс Феррандез имеет большую серию статей по отслеживанию того, чтовиноваты здесь:
. Отладочные демо .NET Лабораторная работа 4: высокая загрузка ЦП
. Отладочные демоверсии .NET Лабораторная работа 4: высокая загрузка ЦП - обзор
Это пример из реальной жизни:
Высокая загрузка ЦП в приложении .NET с использованием статического Generic.Dictionary
Возможно, вы захотите разделить свои сайты на отдельные пулы приложений, чтобы вы могли идентифицировать и изолировать сайт, вызывающий высокую загрузку ЦП (но, похоже, у вас уже есть подозрение, поэтому я бы выделил этот).С этого момента вы можете следовать советам и указаниям Тесс, чтобы отследить причину.
Вы также должны взглянуть на журналы, чтобы увидеть, если вы испытываете неожиданный всплеск или увеличение трафика.Возможно, есть плохо ведущий себя индексатор сайта поисковой системы, прибивающий сайт.Если это так, то, возможно, вам нужно (если вы этого еще не сделали) создать robots.txt
, чтобы сканеры не могли индексировать части сайта, которые не нужно индексировать.Кроме того, если некоторые сканеры чрезмерно смешны, просто запретите их.Возможно, рассмотрите карту сайта для Google, чтобы приручить и настроить ее деятельность.