De vez en cuando en una aplicación .NET alto volumen, es posible que vea esta excepción cuando intenta ejecutar una consulta:¿Cómo maneja los errores de nivel de transporte en SqlConnection?
System.Data.SqlClient.SqlException: A transport-level error has occurred when sending the request to the server.
Según mi investigación, esto es algo que "simplemente sucede" y no mucho se puede hacer para prevenirlo. No sucede como resultado de una mala consulta, y generalmente no se puede duplicar. Simplemente surge una vez cada pocos días en un sistema OLTP ocupado cuando la conexión TCP a la base de datos falla por alguna razón.
Estoy obligado a detectar este error analizando el mensaje de excepción y luego volviendo a intentar toda la operación desde cero, para incluir el uso de una nueva conexión. Nada de eso es bonito.
¿Alguien tiene alguna solución alternativa?
Aumente la memoria RAM –
¿Tiene estadísticas para la carga en su servidor de base de datos cuando se producen estos errores? Es posible que tenga problemas con la base de datos que causan fallas en las conexiones. –
Esto * no debería * suceder, incluso en un volumen de transacciones alto. Ejecutamos un promedio de 25,000 transacciones por segundo en SQL Server 2005 Standard, y no obtenemos este error. (A menos que el clúster falle, que es cada 12+ meses, no cada pocos días). Sin más información, parece que hay un problema de red entre su servidor de base de datos y sus servidores de aplicaciones. ¿Puedes publicar más información? – Portman