Solucion a Tiempo de espera agotado en ASP clásico

Código ASP clásico

Recientemente, tuvimos una base de datos en SQL Server que crecía enormemente de tamaño. Este aumento en el tamaño de la base de datos empezó a causar tiempos de espera agotados en el sitio web desarrollado con ASP clásico.

Este es el error que hemos recibido continuamente por parte del IIS:


	   Microsoft OLE DB Provider for ODBC Drivers error '80040e31'
   [Microsoft][ODBC SQL Server Driver]Timeout expired
   consulta.asp, line 25

Buscando en google encontramos diferentes ideas para solucionarlo. El resumen de una intensa busqueda fue que había dos opciones específicas que afecten a un tiempo de espera de secuencia de comandos ADO. Con el objeto Connection de ADO, vi límite de comando y temporización de la conexión. Manipulé mi código para tener este aspecto:


	   dim myConn
   Set myConn = Server.CreateObject("ADODB.Connection")
   myConn.CommandTimeout = 0
   myConn.Open "Provider=MSDASQL;Driver={SQL Server};Server=server;Database=database;UID=uid;PWD=pwd;"

La línea myConn.CommandTimeout = 0 establece el CommandTimeout estrictamente para ADO. Si se establece en 180 sería de tres minutos. Si se establece en 0 indica que funcione hasta el infinito.

Entonces creé mi objeto de registros:


  	   str_Select = "Select * from tblTableName"
   SET adoRS = Server.CreateObject("ADODB.Recordset")
   adoRS.Open str_Select, myConn, adOpenKeyset, adLockOptimistic

Y el error de tiempos de espera agotados en el sitio web desarrollado con ASP clásico desapareció.

tags: asp clasico, tiempo de espera agotado asp clasico, timeout asp clasico, timeout asp classic, asp classic timeout expired, session timeout asp clasico, server timeout asp classic

En esta sección encontrarás una mezcla de códigos recopilados de fuentes públicas de Internet y otros creados por ASP TEAM. Compartimos recursos útiles de buena fe para formar una base de conocimiento en el desarrollo de aplicaciones en ASP Clásico.