Avatar billede _lars_ Nybegynder
28. februar 2006 - 08:58 Der er 5 kommentarer

Langvarig dataindsamling via aspx eller web service

Hej

Jeg har en .NET console app som automatisk kører på en server engang i døgnet. Den fylder en db op ved at kigge i et par tusind xml filer via internettet. Kørsel tager ca 5 minutter.

Problemet er at jeg skal have mulighed for at igangsætte en dataindsamling manuelt når som helst via internettet. Det er af opsætningsmæssige grunde umuligt at aktivere console appen via nettet, så der skal programmeres en ekstra indsamler.

Denne skal være enten en asp.net side eller en web service. Problemet er bare at hvis jeg lægger tilsvarende kode bag en side eller service så vil der jo komme svartider på de 5 minutter og samtidig vil utidig lukning af browser vel bare afbryde jobbet. Er dette ikke korrekt?

Er der en måde hvorpå jeg kan via en asp.net eller service kan "returnere" med det samme hvorefter serveren bliver ved med at arbejde. Sådan at en bruger kan gå ind på siden, trykke "start indsamling" og så bare lukke browseren, hvorefter web serveren bare kører i de 5 minutter.

Anyone?

- Lars
Avatar billede khs1a Nybegynder
28. februar 2006 - 09:11 #1
Hvad med at lave en Windows Service som indsamler
du kan så tilgå servicen vha. remoting fra en web side.
på web siden kunne du starte/stoppe/se status.
Avatar billede driis Nybegynder
28. februar 2006 - 18:15 #2
Du kan starte en ny tråd, der udfører arbejdet, og returnere responset til brugeren straks. Ulempen er at du så ikke kan kommunikere eventuelle fejl eller lign til brugeren.

Eventuelt kan du gemme en reference til tråd objektet i brugerens session og på den måde give en status hvis brugeren reloader siden.
Avatar billede arne_v Ekspert
01. marts 2006 - 00:23 #3
traade og web apps er ikke en god cocktail

service lyder bedre i mine oerer
Avatar billede _lars_ Nybegynder
01. marts 2006 - 17:18 #4
Windows Services kender jeg ikke til (jeg kender web services). Hvordan fungerer de?

I grove træk?... hvordan laves de, installeres på serveren, aktiveres udefra? Det er ikke sikkert jeg kan få lov til at oprette sådan en på serveren.

- Lars
Avatar billede khs1a Nybegynder
02. marts 2006 - 07:37 #5
En windows service er i grove træk et almindeligt program som er registreret på serveren. Servicen kan stoppes/startes vha. services i kontrol panel. Du kan lave en windows service i Visual Studio.net. Installation kan foregå med installutil. for at kunne installere servicen skal du have administrator adgang til serveren.

Der er et eksempel på service her :
http://www.awprofessional.com/articles/article.asp?p=337306&seqNum=1
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester