/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Timing i ASP
Fra : Adrian Hjelmslund


Dato : 06-04-02 22:11

Hejsa,
Jeg skal lave et script, der skyder en respons.write af hvert eller hvert
2nd sekund i en endless loop. Har ledt efter timer, wait og delay features,
men fandt intet.
Så....noget godt bud på hvordan jeg klarer sagen?

Mvh
Adrian Hjelmslund




 
 
F.Larsen (06-04-2002)
Kommentar
Fra : F.Larsen


Dato : 06-04-02 23:31


"Adrian Hjelmslund" <electronic@hjelmslund.dk> wrote in message
news:3caf6443$0$52672$edfadb0f@dspool01.news.tele.dk...
> Jeg skal lave et script, der skyder en respons.write af hvert eller hvert
> 2nd sekund i en endless loop. Har ledt efter timer, wait og delay
features,
> men fandt intet.

Det lyder som om ASP ikke helt er sagen til den opgave.
Hvad skal det bruges til ?

--
Flemming
Støjdæmp din PC: http://hjem.get2net.dk/Quake2/AlphaPal8045T/index.htm
Asus A7V266-E.: http://hjem.get2net.dk/Quake2/LowNoise2/A7V266-E.htm





Anders Lund (07-04-2002)
Kommentar
Fra : Anders Lund


Dato : 07-04-02 00:33

"Adrian Hjelmslund" <electronic@hjelmslund.dk> skrev i en meddelelse
news:3caf6443$0$52672$edfadb0f@dspool01.news.tele.dk...
> Hejsa,
> Jeg skal lave et script, der skyder en respons.write af hvert eller hvert
> 2nd sekund i en endless loop. Har ledt efter timer, wait og delay
features,
> men fandt intet.
> Så....noget godt bud på hvordan jeg klarer sagen?
IIS er ikke så glad for følgende, men uden eksterne kompunenter er det det
bedste jeg kender.

response.buffer = true
do inttime = timer()
if (inttime mod 2) = 0 then
Response.Write "endnu 2 sekunder"
Response.flush
end if
if inttime > 5000 then
Response.Write "end"
exit do
end if
loop
--
Mvh
Anders Lund
Programmør på OverClocking.dk



Jakob Møbjerg Nielse~ (07-04-2002)
Kommentar
Fra : Jakob Møbjerg Nielse~


Dato : 07-04-02 16:24

> response.buffer = true
> do inttime = timer()
> if (inttime mod 2) = 0 then
> Response.Write "endnu 2 sekunder"
> Response.flush
> end if
> if inttime > 5000 then
> Response.Write "end"
> exit do
> end if
> loop

Og hvis det var mig der var sysadm på admin, ville jeg nok blive godt
gal over at finde en stump kode der, i så stor stil, spilder CPU
kraften. Snak med administratoren. Han vil sikkert hellere end gerne
smide en "wait-komponent" ind, taget i betragtning at ovenstående er
alernativet

--
Jakob Møbjerg Nielsen
jakob@dataloger.dk
"Hey! He reminds me of someone who looks just like him. - Me"



Jakob Andersen (08-04-2002)
Kommentar
Fra : Jakob Andersen


Dato : 08-04-02 09:26

"Adrian Hjelmslund" <electronic@hjelmslund.dk> skrev i en meddelelse
news:3caf6443$0$52672$edfadb0f@dspool01.news.tele.dk...
> Jeg skal lave et script, der skyder en respons.write af hvert eller hvert
> 2nd sekund i en endless loop. Har ledt efter timer, wait og delay
features,
> men fandt intet.

Kan du fortælle hvad det skal bruges til? Jeg er 100% sikker på at der er en
mindre CPU belastende løsning.

--
Jakob Andersen



Adrian Hjelmslund (08-04-2002)
Kommentar
Fra : Adrian Hjelmslund


Dato : 08-04-02 20:18

> Kan du fortælle hvad det skal bruges til? Jeg er 100% sikker på at der er
en
> mindre CPU belastende løsning.

Ja, det kan jeg da godt....
Beklager at historien bliver lang nu, men jeg vil givetvis poste flere
nødråb den kommende tid der vil vække lidt undren hist og pist, så i kan
ligesågodt få hele eventyret nu, istedet for i mindre bidder.

Jeg har et par stykker elektronik der samler nogle måledata. Hver af disse
har en mobiltelefon, således at data kan tappes tråløst med modemfunktion,
da disse kasser står rundt omkring i landet på mærkværdige steder. Flere
forskellige kunder i min butik skal kunne logge ind på en site, og se deres
data præsenteret der.

Så, jeg har en pc stående til at kommunikere via modem til disse stykker
elektronik Lad os kalde den EPC. Denne PC skal være i kontakt med
webserveren der er et webhotel. Denne PC kalder vi WPC.

Brugerne logger ind på WPC og laver en forespørgsel på deres data. Denne
forespørgsel sendes videre til EPC, der laver opkald til elektronikkasserne,
tapper data, og returnerer disse til WPC, hvor de præsenteres for brugerne.

På WPC er der HTTP og FTP som kommunikationsformer. Har valgt at lave linket
mellem PCere på denne måde: EPC connecter til WPC der skyder et ASP program
(ELINK.ASP) af. Dette skulle være en løbende process for at holde
forbindelsen i live, og derfor denne lidt perverse lykke som tidligere
omtalt. WPCen generer en site der aldrig afsluttes, for at kunne sende
forespørgsler til EPC.
Det ville naturligvis være mere fornuftig hvis WPC laver en forespørgsel til
EPC, og EPC konfigureres som server. Problemet er bare at jeg ikke ved en
skid om servere (og desværre næsten lige så lidt om ASP ), og hvis EPC
skal lege server, vil jeg også blive syltet ind i sikkerhed omkring inet og
firewalls, serversetup og alt det andet frække. Det magter jeg ikke. Det er
iøvrigt af samme årsag at projektet er delt op mellem 2 forskellige PCere...
Essencen i det hele er, at WPC er server, og EPC er klient!

Anyway, jeg connecter som sagt fra EPC til WPC, som returnerer en side der
aldrig afsluttes. Denne side indeholder en løkke der sender ser om en bruger
har lavet en request af data, og sender så requesten videre til EPC. Dette
skal helt gå lidt kvikt! Jeg kunne lave det således at EPC lave en request
på site et par gange i sekundet, men mener at det ville generere for meget
unødigt trafik af requests samt tomme sites. Løkkemetoden jeg valgte i
stedet for, giver ikke unødig trafik, men som i siger, unødig brug af CPU
tid. Men, har man i ASP en DoEvent som i visbas, der frigiver cpu tid til
andre tasks?? Det vile være fornuftigt.

Håber at have skabt lidt klarhed over den underlige løkke, samt forberedt
jeg på flere kommende spørsmål

Bør i parantes lige nævne, at jeg aldrig har leget med ASP før, og intet
kender til Client server problematikken endnu, så nogle af mine spørgsmål
virker muligvis lidt ubegavede.

Mvh
Adrian Hjelmslund.

og så et par tillægsspørgsmål!

Når kunder logger ind og laver en forespørgsel skal den videresendes fra
kundelogin (som jo kan være mange instances) til linkdelen (der kun er en
instance). Kan 2 ASP scripts sende data til hinanden, UDEN at starte en ny
instance? Er ikke mit uniddlbare indtryk.
Min ide (indtil jeg er blevet klogere!) at have et GLOBAL.ASP der invokes af
både kundelogins og link, og data af den vej deles, via applikations
variable. Lyder dette dumt? Er der et fornuftigt alternativ???

Vil gerne returnere data til kunderne via textboxe. Er ikke et problem, men
jeg bryder mig ikke om at blande HTML og ASP i en stor pærevælling. Kan man
definere hele HTML siden incl textboxe, og EFTER HTML koden assigne
værdierne til boxene via script??

Har selvfølgelig fixet masser af bøger vedr asp, men ingen har fornuftige
beskrivelser af response og request objecter. Har heller ikke fundet det i
MSDN Nogen der har et forslag til hvor disse findes?????

PS. Tak for de svar jeg allerede har modtaget, og tak for de svar jeg
sikkert også får på længere sigt. Håber at kunne betale tilbage senere hen,
ved selv at kunne hjælpe andre lidt på vej.




F.Larsen (08-04-2002)
Kommentar
Fra : F.Larsen


Dato : 08-04-02 23:17

Hej adrian

Interresant problemstilling. Det er muligt at du kan lave det i ASP, men der
er nogle principper som er lidt skæve med den løsning som du her beskriver,
primært fordi ASP er ikke beregnet til 'endeløse' forbindelser. Det er
muligt at du kan få sat timeouts ect op så det kan lade sig gøre. Mit bud er
at du kun får problemer og en ustabil løsning ud af det. ASP og webserver
fungerer udfra princippet Request->Response - og der er kun et forsøg ;=)

Jeg har lavet noget lignende med en server som leverer data og en klient som
opsamler. Løsningen er lavet i en kombination af ASP og Perl.

Mit design er følgende:

1) "Data producenten" kører en telnet server. Data sendes ud en linie
adgangen.
2) "Data konsumenten" kobler sig op via telnet og stiller sig herefter op og
venter på data/linier.
3) Når data modtages gemmes det i en SQL Database.
4) Når en bruger via en Web browseren skal se data håndteres dette af et ASP
script som læser fra databasen.
5) Hvis forbindelsen mellem Producent og Konsument ryger, vil kienten
automatisk forsøge at genetablere forbindelsen.

Data konsumer er skrevet i perl hvor jeg har brugt et standard Net::Telnet
modul. For at åbne en forbindelse og modtage en linie data i en loop er 1/2
A4 sides kode.

Perl kan hentes her:
http://www.activestate.com/Products/Download/Get.plex?id=ActivePerl

Net::Telnet dokumentation:
http://www.perldoc.com/cpan/Net/Telnet.html

--
Flemming
Støjdæmp din PC: http://hjem.get2net.dk/Quake2/AlphaPal8045T/index.htm
Asus A7V266-E.: http://hjem.get2net.dk/Quake2/LowNoise2/A7V266-E.htm






Søg
Reklame
Statistik
Spørgsmål : 177505
Tips : 31968
Nyheder : 719565
Indlæg : 6408554
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste