WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Sajten får timeout pga externt material (https://www.wn.se/forum/showthread.php?t=35591)

HeavyHaze 2009-03-07 10:30

Hej
Jag har en asp-sida som får timeout på grund av att det tar lång tid att hämta externt material från en annan sajt. Hur skriver man för att få sajten att gå vidare och hoppa över det externa materialet om det tar för lång tid att hämta?

Hejsvejs

allstars 2009-03-07 10:36

Du kan använda javascript (ajax) för att hämta externt data istället.

HeavyHaze 2009-03-07 10:43

Citat:

Originally posted by allstars@Mar 7 2009, 11:36
Du kan använda javascript (ajax) för att hämta externt data istället.

Hej allstars
Jag hämtar en xml-feed och gör om den hos mig. Ajax skulle säkert fungera på något sätt, men jag är ingen fena på språket.

Söker en kod något i stil med:
---- provar att hämta externt material men om det tar längre än 10 sekunder struntar jag i det och går vidare på sidan ----

Jawn 2009-03-07 11:01

Eller så hämtar du materialet och sparar det i databasen för o sedan hämta ut det snabbt o enkelt.

digiArt 2009-03-07 11:09

Om du kör .NET kan du sparka igång en separat tråd som hämtar datat och puttar ner det i den databas. Sen kan du hämta det därifrån.

Det är fullt möjligt att bygga en timer som ligger och snurrar i bakgrunden och gör sådana här jobb med givna intervaller, perfekt om man ligger på ett webhotell och inte kommer åt windows schemaläggare.

Alternativt gör du som tidigare talare, fast har ett ajax-anrop mot en egen sida som i sin tur hämtar data. Då kan du få ner det i en db för nästa anrop om du inte behöver ha det absolut senaste uppdaterade från den externa siten.

Daniel.st 2009-03-08 21:50

Även jag skulle nog föredra en AJAX-lösning men annars borde du ju kunna sätta ett specifikt timeout värde och sedan fånga undantaget om informationen inte kan laddas.

scrdj 2009-03-08 22:42

Något i stil med

"On Error Resume Next"

Beror iof hur din kod ser ut.

tartareandesire 2009-03-08 22:47

Måste du hämta det externa materialet direkt?

taz76 2009-03-11 20:28

hämta det externa material och spara till en databas via ett cron-script som körs på servern.. sen på sidan hämtar du ur databasen.

Eclipse 2009-03-11 20:53

Server.ScriptTimeout = 3600

Aerpe 2009-03-12 13:18

Eller ladda den datan i en IFRAME istället.

HeavyHaze 2009-11-13 15:20

Tack för tipsen. Iframe-lösning hoppar jag eftersom innehållet som jag hämtar ner är bra för sökmotorer.

allstars 2009-11-13 17:12

oj, har du varit borta i 8 månader? :)

Gör som beskrivit tidigare; låt ett separat jobb varje xx timme hämta externt mtrl och lagra i egen databastabell.

Lätt det bästa tillvägagångssättet.


Alla tider är GMT +2. Klockan är nu 18:37.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson