[ASP] server side delay

Pagina: 1
Acties:

  • The_Butler
  • Registratie: April 2001
  • Laatst online: 13-04 17:50
OS: Windows XP
Database: Access 2000
Webserver: IIS

Ik heb het volgende probleem;

Ik wil aan de server kant graag ieder uur een paar querys uitvoeren (SELECT, INSERT en DELETE).
Ongeacht of er clienten verbonden zijn met de website. Dit wil ik doen via de global.asa file;
code:
1
2
3
4
5
6
7
8
SUB Application_Onstart

DO WHILE TRUE
     Doe je 3 Queries
     Wacht een uur
LOOP

END SUB


alleen heeft VBA geen Delay, Sleep, of Wait functie. Ik neem aan dat dit expres is gedaan door de heren bij Microsoft, dus dat betekend dat wat ik wil doen eigenlijk niet op deze manier moet. Kan iemand mij een suggestie geven hoe ik dit probleempje het beste oplos?

achtergrond info:

Ik heb een webpagina die data uit tabel 1 ophaalt en die deze in tabel 2 neerzet (samen met wat extra informatie) Gemiddeld zal er 1 record per uur worden toegevoegd aan Tabel1, maar het zal zeker voorkomen dat er rond de 100 records per uur worden bijgeschreven. Het probleem is dat deze webpagina maar eens in de 3/4 maanden zal worden bekeken, als dit gebeurt dan heeft mijn arme ASP script opeens een gigantische hoeveelheid data te verstouwen, terwijl de gebruiker maar geinterreseerd is in een fractie van de data. Ik wilde dit oplossen door wat code in mijn global.asa file te schrijven; zodra de webserver start dan wil ik ieder uur even die query draaien, zodat allees netjes in tabel 2 komt te staan en mijn gebruiker snel de relevante data krijgt die hij nodig heeft.

at your service


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Dit soort vragen horen toch echt in [PW] ;)

Ik begrijp dat je een sleep wilt inbouwen om die query uit te voeren, kan je dan niet zo'n oplossing gebruiken?
http://www.codeproject.com/asp/webtimer.asp

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Het lijkt me niet echt aan te raden om je global.asa constant te laten runnen. Als je eens in de zoveel tijd wat wilt uitvoeren moet je daar gewoon voor gebruiken wat daar voor gemaakt is "Scheduled Tasks".

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


  • Blue-eagle
  • Registratie: September 2000
  • Niet online
Als je de beschikking hebt tot de server waar het op draait kan je misschien beter een Windows Service maken in Visual Studio (.net?) en gewoon Windows de boel af laten handelen, zonder dat je afhankelijk bent van je webserver en ASP :) Dan kun je ook nog recovery acties in stellen en dergelijke.

  • The_Butler
  • Registratie: April 2001
  • Laatst online: 13-04 17:50
Bedankt voor de reacties;

Ik heb besloten om de queries aan de server zijde op de correct manier uit te voeren; gewoon een scheduled task die ieder uur netjes de data in tabel 2 update, ik kan dan zelfs een derde tabel maken zonder alle overtollige data. Aangezien ik onder wat tijdsdruk sta los ik het voorlopig heel simpel op; als iemand naar de website gaat dan wordt gewoon de hele query uitgevoerd, dan moet de client maar even wachten op ze'n data.

Ik heb voor MySQL al een paar gratis tooltjes gezien die via ODBC een query kunnen uitvoeren, ik denk dat ik geen moeite zal hebben iets te vinden dat werkt met Access (Access en MySQL praten beide SQL dus het zou in theorie gewoon moeten werken).

at your service