Foros del Web » Programando para Internet » ASP Clásico »

Proceso pesado = Scripttimeout

Estas en el tema de Proceso pesado = Scripttimeout en el foro de ASP Clásico en Foros del Web. Hola a todos, Tengo que hacer un proceso diario del tipo "web inmobiliaria" que consiste en leer una tabla de Alertas o Avisos y cotejarla ...
  #1 (permalink)  
Antiguo 29/08/2007, 09:05
Avatar de fario13  
Fecha de Ingreso: junio-2004
Ubicación: Entre Madrid y Logroño
Mensajes: 411
Antigüedad: 20 años
Puntos: 7
Proceso pesado = Scripttimeout

Hola a todos,

Tengo que hacer un proceso diario del tipo "web inmobiliaria" que consiste en leer una tabla de Alertas o Avisos y cotejarla con la tabla de Ofertas para que los usuarios reciban diariamente las ofertas del dia anterior que coincidan con los criterios seleccionados en sus Alertas.

Mas o menos se como hacerlo, pero se me ocurre pensar que si la tabla de Alertas tiene 1000 registros y las de ofertas no menos de 10000 el proceso se va a hacer muy pesado y supongo que rompera con el "Scripttimeout" antes de que le de tiempo a acabar.

La base de datos esta en Access.

Alguna idea de como hacer esto mas rapido?

Gracias
__________________
Bodegas La Rioja
  #2 (permalink)  
Antiguo 29/08/2007, 11:12
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 7 meses
Puntos: 8
Re: Proceso pesado = Scripttimeout

Que tal fario13.

Pero si vas a tener un proceso (digamos por la noche) , a quien le marcaría el error??.

Ahora bien, lo que se me ocurre para que sea un "poco" más rápido, es que, cuando se modifique o se inserte una nueva oferta, veas sino cumple con algún criterío de una alerta, de esta manera, creo yo, se reduce el campo de busquedas. Si hubo alguna coincidencia "guardas" como pendiente de enviar esa notificación y al final del día envias las notificaciones

Saludos!!
  #3 (permalink)  
Antiguo 29/08/2007, 11:30
Avatar de AlZuwaga
Colaborador
 
Fecha de Ingreso: febrero-2001
Ubicación: 34.517 S, 58.500 O
Mensajes: 14.550
Antigüedad: 23 años, 3 meses
Puntos: 535
Re: Proceso pesado = Scripttimeout

Primeramente, olvídate de Access. Contratá un plan con SQLServer.
__________________
...___...
  #4 (permalink)  
Antiguo 29/08/2007, 12:31
 
Fecha de Ingreso: agosto-2007
Mensajes: 665
Antigüedad: 16 años, 10 meses
Puntos: 4
Re: Proceso pesado = Scripttimeout

Cita:
Iniciado por fario13 Ver Mensaje
Hola a todos,

Tengo que hacer un proceso diario del tipo "web inmobiliaria" que consiste en leer una tabla de Alertas o Avisos y cotejarla con la tabla de Ofertas para que los usuarios reciban diariamente las ofertas del dia anterior que coincidan con los criterios seleccionados en sus Alertas.

Mas o menos se como hacerlo, pero se me ocurre pensar que si la tabla de Alertas tiene 1000 registros y las de ofertas no menos de 10000 el proceso se va a hacer muy pesado y supongo que rompera con el "Scripttimeout" antes de que le de tiempo a acabar.

La base de datos esta en Access.

Alguna idea de como hacer esto mas rapido?

Gracias
Access ??? necesitas algo más potente para esto, mysql o sql server

y adicionalmente puedes configurar tu script como una tarea programa de windows y que se realice a una hora de poco trafico del servidor. Otra cosa es que no realices todo el proceso de una, puedes enviar por bloques de 100 o 200 registros, pero todo de forma automatica
  #5 (permalink)  
Antiguo 29/08/2007, 12:39
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Re: Proceso pesado = Scripttimeout

Cita:
Iniciado por rcalle66 Ver Mensaje
Access ??? necesitas algo más potente para esto, mysql o sql server

y adicionalmente puedes configurar tu script como una tarea programa de windows y que se realice a una hora de poco trafico del servidor. Otra cosa es que no realices todo el proceso de una, puedes enviar por bloques de 100 o 200 registros, pero todo de forma automatica
Escucho un eco...ah si, es rcalle66, si usa SQL, como ya también se lo recomendaron, no es necesario recurrir a ninguna tarea programada de windows, puede perfectametne crear un job en SQL, toda vez que el proceso es de base de datos.


Saludos
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #6 (permalink)  
Antiguo 29/08/2007, 19:31
 
Fecha de Ingreso: agosto-2007
Mensajes: 665
Antigüedad: 16 años, 10 meses
Puntos: 4
Re: Proceso pesado = Scripttimeout

Cita:
Iniciado por u_goldman Ver Mensaje
Escucho un eco...ah si, es rcalle66, si usa SQL, como ya también se lo recomendaron, no es necesario recurrir a ninguna tarea programada de windows, puede perfectametne crear un job en SQL, toda vez que el proceso es de base de datos.


Saludos
u_goldman, le sugiero mejor una tarea programa de windows por que si tiene el sitio web en un hosting compartido no le permitiran ejecutar jobs de sql server.
  #7 (permalink)  
Antiguo 30/08/2007, 06:52
Avatar de fario13  
Fecha de Ingreso: junio-2004
Ubicación: Entre Madrid y Logroño
Mensajes: 411
Antigüedad: 20 años
Puntos: 7
Re: Proceso pesado = Scripttimeout

Me parecen todos los comentarios muy interesantes. Voy a mirar los del SQL. Lo que pasa es que ya tengo hecho bastante trabajo. Es posible migrar la base de datos access a sql? como?

Luego tendria que modificar el ASP para las conexiones, consultas, etc, ?


Gracias
__________________
Bodegas La Rioja
  #8 (permalink)  
Antiguo 30/08/2007, 09:57
Avatar de mc_quake  
Fecha de Ingreso: enero-2006
Ubicación: www.ecocargo.cl
Mensajes: 683
Antigüedad: 18 años, 5 meses
Puntos: 8
Re: Proceso pesado = Scripttimeout

yo tuve algo parecido a tu problema pero con algo de 8500 registros y cuandlo ejecutava me mandaba errror en tiempo asi que agregue esto al principio de pa pag
<%
Response.Buffer= true
Response.Expires = 2
%>

el response buffer lo use para poder ejecutar el Response.Flush ed la siguiente forma

Cita:
While NOT rs_mon.EOF
texto_resaltado = rs_mon("US_Nombre")
texto_resaltado = Replace(lcase(texto_resaltado),buscador,"<b><font color= #ff0033>"& buscador &"</font></b>")

texto_resaltado2 = rs_mon("us_email")
texto_resaltado2 = Replace(lcase(texto_resaltado2),buscador,"<b><font color= #ff0033>"& buscador &"</font></b>")
%>
<tr onMouseOver="this.style.backgroundColor='#D1D175'" onMouseOut="this.style.backgroundColor='<%If cint(rs_mon("US_Suscriptor")) = 1 Then Response.Write("#eeeeee")%>'" <%If cint(rs_mon("US_Suscriptor")) = 1 Then Response.Write("bgcolor=#eeeeee")%>>
<td><%=texto_resaltado%></td>
<td><a href="mailto:<%=(rs_mon("us_email"))%>"><%=texto_r esaltado2%></a></td>
<td><%=SitioWeb(rs_mon("us_sitio"))%></td>
<td width="5%" align="right"> <input <%If (CStr((rs_mon.Fields.Item("US_Suscriptor").Value)) = CStr("1")) Then Response.Write("checked") : Response.Write("")%> name="checkbox<%=(rs_mon("us_id"))%>" type="checkbox" value="1" onClick="RecUpdate('<%=(rs_mon("us_id"))%>')"></td>
</tr>
<%selection= selection& rs_mon("us_id") &"," %>
<%
rs_mon.MoveNext()
Response.Flush
Wend
y me funciona de maravilla espero te sirva
__________________
Mc_Quake

Para ayudar en lo que se pueda:Zzz:
  #9 (permalink)  
Antiguo 30/08/2007, 12:59
Avatar de fario13  
Fecha de Ingreso: junio-2004
Ubicación: Entre Madrid y Logroño
Mensajes: 411
Antigüedad: 20 años
Puntos: 7
Re: Proceso pesado = Scripttimeout

Gracias mc_quake, lo tendre en cuenta por si acaso, pero me he decidido a hacerlo con SQL; y asi de paso aprendo algo nuevo.

Pero ahora (como no) vienen los problemas. Me he instalado SQL server 2005 Express y el SQL Server Migration Assistant for Access. Tengo en mi ordenador XP con SP2, y el IIS funcionando. El SQL server tambien esta arrancado. Pero cuando comienzo la migracion con el SSMA me da error al intentar conectar con el SQL Server. Me explica el mensajito que puede ser debido a que SQL server no permite las conexiones remotas y me hace referencia a "Names Pipes Provider". He mirado la configuracion de SQL server y me he asegurado que permite todo lo permitible, ... pero nada -> ERROR

Os ha ocurrido esto alguna vez? Me echais una manita?

Gracias
__________________
Bodegas La Rioja
  #10 (permalink)  
Antiguo 30/08/2007, 20:17
 
Fecha de Ingreso: agosto-2007
Mensajes: 665
Antigüedad: 16 años, 10 meses
Puntos: 4
Re: Proceso pesado = Scripttimeout

Prueba migrando los datos con un DTS
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:11.