/ 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
Application-variable
Fra : Jesper Stocholm


Dato : 30-04-01 08:50

Jeg har en applikation, hvor jeg gerne vil cache resustatet af
nogle ret komplicerede og omfangsrige forespørgsler.
Applikationen er baseret på Access som db-backend. Jeg har
overvejet, om det ikke ville være en idé at cache indholdet i
application-variable, men jeg er usikker på, hvordan jeg skal
gribe det an. Hvis jeg vælger at smide indholdet ind i en
application-variable - fx med

application("folder_xml") = rs.xml

vil variablens indhold så blive overskrevet - i det øjeblik en
anden bruger (på potentielt samme tid) loader siden ... eller
holder IIS selv øje med, hvilke application-variable, der hører
til hvilke brugere ?

Er løsningen at give hver application-variabel et unikt navn (på
brugerniveau) ? Jeg kan ikke bruge løsningen med at bruge lokalt
definerede variable, da disse skal kunne tilgås fra mange
forskellige sider. Cookies er heller ikke løsningen, da data
potentielt er på adskillige kbytes - cookies ville bla. medføre,
at disse data blev smidt frem og tilbage imellem klient og server
for hvert request.

Jeg håber, at jeg har forklaret mit problem tydeligt nok.



Jesper Stocholm

--
Dette indlæg er sendt fra http://www.html.dk
* Søg og læs i de danske nyhedsgrupper om webdesign
* Tutorials og artikler om webdesign på dansk

 
 
Lauritz Jensen (30-04-2001)
Kommentar
Fra : Lauritz Jensen


Dato : 30-04-01 09:59

Jesper Stocholm wrote:
>
> Jeg har en applikation, hvor jeg gerne vil cache resustatet af
> nogle ret komplicerede og omfangsrige forespørgsler.
[...]
> application("folder_xml") = rs.xml

Du kan gemme det som xml, men så vil der nok være mere ide i at gemme
hele dom-objektet (Microsoft.FreeThreadedXMLDOM eller noget i den stil),
så xml teksten ikke skal parsers hele tiden. Jeg plejer nu bare simple
datatyper (arrays, string ..)

> vil variablens indhold så blive overskrevet - i det øjeblik en
> anden bruger (på potentielt samme tid) loader siden ... eller
> holder IIS selv øje med, hvilke application-variable, der hører
> til hvilke brugere ?

Application varaible deles af alle brugere og derfor er den god til
cahce. Hvis du vil cache nogle data, for hver enkelt bruger, skal du jo
nok bruge session.

--
Lauritz

Jesper Stocholm (30-04-2001)
Kommentar
Fra : Jesper Stocholm


Dato : 30-04-01 11:50

Lauritz Jensen <lauritz2@hotmail.com> wrote in <3AED2946.6730B509
@hotmail.com>:

>Jesper Stocholm wrote:
>>
>> Jeg har en applikation, hvor jeg gerne vil cache resustatet af
>> nogle ret komplicerede og omfangsrige forespørgsler.
>[...]
>> application("folder_xml") = rs.xml
>
>Du kan gemme det som xml, men så vil der nok være mere ide i at gemme
>hele dom-objektet (Microsoft.FreeThreadedXMLDOM eller noget i den stil),
>så xml teksten ikke skal parsers hele tiden. Jeg plejer nu bare simple
>datatyper (arrays, string ..)
>

ja ... naturligvis ...

>> vil variablens indhold så blive overskrevet - i det øjeblik en
>> anden bruger (på potentielt samme tid) loader siden ... eller
>> holder IIS selv øje med, hvilke application-variable, der hører
>> til hvilke brugere ?
>
>Application varaible deles af alle brugere og derfor er den god til
>cahce. Hvis du vil cache nogle data, for hver enkelt bruger, skal du jo
>nok bruge session.
>

det var også min tanke ... men siden, der genererer xml-data er en dynamisk
side - dvs file.asp?id=3&num=2 ... og det skulle gerne kunne gemmes i en
variabel, der er "query-specifik" - dvs den skal hentes og adskilles fra
variablen indeholdende data hentet fra siden file.asp?id=9&num=8 .

Men kræver det ikke, at jeg kan oprette dynamiske variable - og det er vist
ikke muligt i ASP3 ... eller tager jeg fejl ?

Sessions er cookies - og jeg er ikke interesseret i at smide store mængder
data med hvert eneste request ... men er der ikke også en øvre grænse for,
hvor meget data en cookie kan indeholde - eller er det antallet af cookies,
der er begrænset ?

--
There is a group at Fort Meade, who fear that which they cannot read
so they fight with their friends (God knows to what ends!)
In attempts to get more than they need.
(Jim Bidzos, CEO of RSA Data Security)


Niels Henriksen (30-04-2001)
Kommentar
Fra : Niels Henriksen


Dato : 30-04-01 13:52

"Jesper Stocholm" <usenet@stocholm.dk> wrote in message
news:Xns9093823F533Dspamstocholmdk@192.38.208.81...
>
> Sessions er cookies - og jeg er ikke interesseret i at smide store mængder
>
Det eneste der bliver sent til brugeren ved brug af Sessions er SessionID.
Resten ligger på serveren.


--
Niels Henriksen
Systemudvikler
Netopcom Danmark ApS
www.netopcomdanmark.dk



Lauritz Jensen (30-04-2001)
Kommentar
Fra : Lauritz Jensen


Dato : 30-04-01 16:24

Jesper Stocholm wrote:
>
> [...] siden, der genererer xml-data er en dynamisk
> side - dvs file.asp?id=3&num=2 ... og det skulle gerne kunne gemmes i en
> variabel, der er "query-specifik" - dvs den skal hentes og adskilles fra
> variablen indeholdende data hentet fra siden file.asp?id=9&num=8 .

Hvad så med at cache det sådan:

id = CLng("" & Request("id"))
num = CLng("0" & Request("num"))
name = "_" & id & & "_" & num
If Not isDate(Application("updated" & name)) Or _
(DateDiff("m", Application("updated" & name), now) > 60) Then
data = LangsomGenereringAfData(id, num)
Application("data" & name) = data
Application("updated" & name) = Now
End If
data = Application("data" & name)
call BrugLangsomData(data)

> Sessions er cookies

Nej, session-data gemmes på serveren, mens kun en reference (en unik
nøgle) sendes til brugeren (godt nok i form af en cookie).

--
Laruitz

Søg
Reklame
Statistik
Spørgsmål : 177557
Tips : 31968
Nyheder : 719565
Indlæg : 6408877
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste