у нас есть производственное приложение asp.net, где w3wp.exe загружает 100% ЦП (4 ядра - 4 потока по 25%), и загрузка ЦП никогда не снижается, пока мы не перезапустим пул приложений (приложение находится в одиночестве в пул приложений). В нашем журнале ошибок ничего нет, исключений нет (или, по крайней мере, мы их не перехватываем), поэтому мы подозреваем, что это проблема кода (бесконечный цикл / тупик). Проблема возникает только после нескольких часов работы с высокой нагрузкой (несколько тысяч пользователей).
Есть ли способ профилировать один из существующих потоков, который вызывает загрузку процессора? После изучения DotTrace Profiler в JetBrains кажется, что ограничения Profiling API и человека невозможны, поэтому мы не можем воспроизвести проблему в нашей среде тестирования.
Приложение использует SQL Server 2005, LINQ2SQL и System.Transactions API.
Любое предложение, чтобы найти проблему?