Solucion a Tiempo de espera agotado en ASP clásico
Código ASP clásico
- Por Programador ASP clásico /
- 26/02/2013 @ 14:48:40 /
- 1008 visitas
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