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

Proceso en background en ASP

Estas en el tema de Proceso en background en ASP en el foro de ASP Clásico en Foros del Web. Hola, tengo un problema que no sé como resolver en ASP. Tengo una web, en la cual los usuarios pueden reservar objetos, por ejemplo libros. ...
  #1 (permalink)  
Antiguo 15/10/2003, 00:58
Avatar de Zokor  
Fecha de Ingreso: julio-2002
Mensajes: 167
Antigüedad: 21 años, 11 meses
Puntos: 1
Proceso en background en ASP

Hola, tengo un problema que no sé como resolver en ASP. Tengo una web, en la cual los usuarios pueden reservar objetos, por ejemplo libros. La reserva, que se anota en base de datos, se hace por 7 días. Un día antes de que se termine la reserva, se le debe comunicar automáticamente al usuario a través de e-mail.

Como digo, esto último es un proceso automático que no requiere de intervención del usuario. ¿De qué manera puedo hacerlo?

Saludos y gracias anticipadas.
  #2 (permalink)  
Antiguo 15/10/2003, 05:07
Avatar de nazkatuta  
Fecha de Ingreso: julio-2002
Ubicación: EH - BCN
Mensajes: 222
Antigüedad: 21 años, 10 meses
Puntos: 0
Puedes crearte un programilla, en visual basic por ejemplo, que se ejecute cada dia y sea el encargado de comprobar que reservas caducan al dia siguiente y enviar el correo.

Para ejecutarlo cada dia basta con meterlo en el administrador de tareas.
__________________
Cita:
Gaur ere nahi nuke...
zure ondoan esnatu
  #3 (permalink)  
Antiguo 15/10/2003, 05:17
Avatar de Zokor  
Fecha de Ingreso: julio-2002
Mensajes: 167
Antigüedad: 21 años, 11 meses
Puntos: 1
Gracias por responder nazkatuta.

Creo que lo que dices no me valdrá, porque lo que tengo que hacer es una web que además estará alojada en un servidor de hosting contratado, en el que como es normal no te dejan crear tareas programadas de windows; tan solo usar servicios de ftp, base de datos, algunos cgis, panel de control vía web, etc. Lo típico vamos.

Saludos!
  #4 (permalink)  
Antiguo 15/10/2003, 08:51
Avatar de Zokor  
Fecha de Ingreso: julio-2002
Mensajes: 167
Antigüedad: 21 años, 11 meses
Puntos: 1
Posible solución?

Hola, se me ocurre una posible solución al problema, que quería comentar aquí porque no sé si puede traer inconvenientes.

En el fichero global.asa, en el método Application_onStart (no recuerdo exactamente la nomenclatura) conectaría con la base de datos y haría un bucle que se repitiese cada por ejemplo 12 horas (¿hay alguna instrucción en ASP para provocar esperas en el código?). Es ese bucle comprobaría las reservas y mandaría un mail en caso de que fuesen a caducar.

Técnicamente parece que funcionaría, pero no sé si se me escapa algo. Por ejemplo, no sé si pasado un tiempo la base de datos cerraría la conexión por sí misma.

¿Cómo lo véis? Por otro lado, también quisiera saber si es posible lanzar nuevos procesos o hilos de ejecución (threads) en ASP (quizá me puedan servir tambíen).

Saludos y gracias
  #5 (permalink)  
Antiguo 15/10/2003, 10:42
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 21 años, 6 meses
Puntos: 0
Yo creo que si lanzas un bucle de 24 horas se te cae el server, dado que eso consume muuuuchisimos recursos ¿no?
__________________
Tu portal de manga y anime.
  #6 (permalink)  
Antiguo 15/10/2003, 11:03
Avatar de Zokor  
Fecha de Ingreso: julio-2002
Mensajes: 167
Antigüedad: 21 años, 11 meses
Puntos: 1
Quizá no me expliqué bien. Lo que haría en el método Application_OnStart sería un bucle infinito, es decir, un while (true).

En cada iteración del bucle haría las comprobaciones necesarias, y al final de la iteración ejecutaría alguna instrucción que provoque una pausa, que la verdad no sé si existe en ASP. Me refiero a una especie de Sleep() o Wait(). Dicha pausa sería de 12 horas. De esta forma, se ejecutaría una iteración cada 12 horas.

¿Cómo lo veis?
  #7 (permalink)  
Antiguo 15/10/2003, 20:19
 
Fecha de Ingreso: julio-2002
Mensajes: 447
Antigüedad: 21 años, 10 meses
Puntos: 0
Hola, la verdad no sé si funcionaría, desconozco si esas funciones están disponibles. Tampoco sé, en caso de que se pueda, si recargaría mucho el server.
Desde hace mucho tiempo que veo mensajes preguntando sobre cuestiones automáticas (creo que yo también lo hice en alguna oportunidad) y nunca surgió una respuesta concreta al respecto. Sería muy bueno y positivo que logremos alguna, porque la verdad no tengo idea de como hacer al respecto (todas las cosas que en su momento tenía para hacer automáticamente, es decir en una determinada hora, no me quedó otra solución que hacerlo manualmente).
Si alguien sabe algo sobre esto, sería muy bueno que lo comente.
Muchas gracias, perdón por no poder aportarte mucho Zokor.
Saludos, suerte

Me olvidaba, la idea debería ser como dice Zokor, pensando en que alojamos el sitio en un hosting, y no tenemos acceso a esa máquina para instalar ningún programa aparte....

Última edición por DeLaVega; 15/10/2003 a las 20:21
  #8 (permalink)  
Antiguo 16/10/2003, 02:34
Avatar de Zokor  
Fecha de Ingreso: julio-2002
Mensajes: 167
Antigüedad: 21 años, 11 meses
Puntos: 1
Muchas gracias a todos por la ayuda.
Investigaré más en el tema y si lo consigo ya os aviso y comento la solución. De cualquier forma, cualquier aportación será muy agradecida

Saludos!
  #9 (permalink)  
Antiguo 17/10/2003, 16:49
Avatar de Cbas  
Fecha de Ingreso: enero-2002
Ubicación: capital federal
Mensajes: 437
Antigüedad: 22 años, 5 meses
Puntos: 2
Hola Qué tal?
Necesitaría saber qué base de datos estás usando... porque si usás SQL Server... podés hacer un JOB y que dicho JOB ejecute una página ASP por sí sólo.

Si usás SQL Server... no te olvides de decirmelo así te digo como hacer el JOB.

Saludos
__________________
La Perfección es enemigo de lo bueno.
  #10 (permalink)  
Antiguo 17/10/2003, 17:09
Avatar de AlexNV  
Fecha de Ingreso: junio-2003
Ubicación: Madrid
Mensajes: 289
Antigüedad: 21 años
Puntos: 1
Hola, yo tengo ese mismo problema y trabajo con sql server.
Como se hace para ejecutar un asp desde un job?
  #11 (permalink)  
Antiguo 17/10/2003, 17:12
Avatar de AlexNV  
Fecha de Ingreso: junio-2003
Ubicación: Madrid
Mensajes: 289
Antigüedad: 21 años
Puntos: 1
Si tienes una web + o - concurrida, le puedes poner en el Session on_Start() para que se ejecute cada vez la comprobación y envíe los correspondientes emails.
Es un poco chapuza, puesto que si no entra nadie en un día, no se envía, pero si sabes seguro que alguien va a entrar...
  #12 (permalink)  
Antiguo 17/10/2003, 20:12
 
Fecha de Ingreso: julio-2002
Mensajes: 447
Antigüedad: 21 años, 10 meses
Puntos: 0
Cbas, a mí si me interesaría saber como hacer un JOB con SQL Server para ejecutar una página asp.
Muchas gracias.
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 19:28.