La aplicación web de nuestro cliente se reinicia repentinamente a intervalos aleatorios. Para cada reinicio, hemos encontrado una entrada como esta en el registro de sucesos de Windows:bloqueo de aplicaciones web ASP.NET: creo que es causado por el bloqueo de SQL Server
Event Type: Warning
Event Source: W3SVC-WP
Event Category: None
Event ID: 2262
Date: 2/21/2010
Time: 1:33:52 PM
User: N/A
Computer: LIQUID-NXCFZ9DJ
Description:
ISAPI 'c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll' reported itself as unhealthy for the following reason: 'Deadlock detected'.
Esto ha ocurrido 10 veces en 3 semanas, varios de los que están siendo 2 o 3 veces en varias horas, y también repasando una semana sin que ocurra.
En el volcado de bloqueo que tenemos tal vez 70-80 conexiones de cliente, así:
GET request for <path here>
Mapped To URL <mapped path>
HTTP Version HTTP/1.1
SSL Request False
Time alive 00:55:24
QueryString <query string here>
Request mapped to
HTTP Request State HTR_READING_CLIENT_REQUEST
Native Request State NREQ_STATE_PROCESS
(eso es 55 minutos !!! No hay razón para una conexión de cliente debe estar conectado todo el día)
entradas relevantes en machine.config:
<system.net>
<connectionManagement>
<add address="*" maxconnection="200" />
</connectionManagement>
</system.net>
y (interior):
<deployment retail="true" />
<!--<customErrors mode="Off"/>-->
<processModel autoConfig="true"
memoryLimit="60"
maxIoThreads="200"
minIoThreads="30"
minWorkerThreads="40"
maxWorkerThreads="200"
clientConnectedCheck="00:00:05" />
<httpRuntime
minFreeThreads="20"
minLocalRequestFreeThreads="10"
enableKernelOutputCache="false"
maxRequestLength="10240" />
La última vez que pudimos verlo tal como estaba sucediendo, vimos alrededor de 20 consultas en estado 'suspendido' en el servidor Sql. Parecía que todos podrían haber sido relacionados con una tabla (la tabla de Items, una muy central para muchas operaciones diferentes).
No estábamos seguros de qué era lo mejor que podía hacer en el medio del problema. Cuando se produjo el bloqueo, el servidor Sql se borró.
Cualquier orientación sobre lo que está pasando, o cómo saber qué está pasando, sería muy apreciada.
Buena pregunta. Pero aprende a formatear tus preguntas. Consulte el cuadro amarillo "cómo formatear" cuando ingresa la pregunta. –