У меня есть постоянная проблема с моим веб-сайтом, где, по-видимому, происходит сбой W3wp.exe, и, в свою очередь, любой, кто пытается подключиться к сайту, получит ошибку тайм-аута SQL-сервера.
Ошибка заключается в следующем ...
System.Data.SqlClient.SqlException: истекло время ожидания. Время ожидания истекло до завершения операции или сервер не отвечает.
Что действительно происходит, когда это происходит, загрузка ЦП на сервере максимально достигает 100% и остается там. В течение этого времени, если я попытаюсь подключиться к домашней странице, сайт будет загружаться, а затем истечет время ожидания. Это также тот случай, когда я пытаюсь подключиться к базе данных через студию управления.
Я получаю вышеуказанную ошибку тайм-аута SQL от ELMAH, когда он посылает мне сообщения об исключениях. Когда я делаю iisreset, я снова могу подключиться к серверу SQL, и загрузка ЦП немедленно падает.
Теперь я уже опубликовал несколько вопросов о проблеме, связанной с исключением времени ожидания SQL. Так плохо перечислю, что я сделал и что я использую ...
• Я использую Linq to SQL.
• SQLCacheDependancy.
• IIS 7.5 и SQL Server 2008 R2.
• Утилизация всех предметов.
• Вызов dataContext из Linq to SQL всегда заключен в ключевое слово USING.
Эти ошибки тайм-аута возникают нечасто, возможно, раз в 2 дня, но сегодня, когда я встал, в моем почтовом ящике было много исключений по тайм-ауту, указывающих на то, что одна произошла за одну ночь.
Другая странность в том, что когда, например, это произошло вчера вечером, это было около 4 часов утра, когда я попробовал это сегодня утром в 8 часов утра, сайт работал нормально, поэтому мне кажется, что сверхурочно W3wp.exe, сервер SQL или оба управляют либо переработать, либо сбросить себя.
Может кто-нибудь увидеть, что может быть причиной такого поведения? или укажи мне правильное направление в чем может быть причина? или, возможно, даже возможное решение?
Любая помощь наиболее ценится
Truegilly