webForumDet fria alternativet

Hur mycket kräm drar sessions?

ASP

29 svar · 1 254 visningar · startad av Eclipse · sida 2 av 2

Frågan, av Eclipse

Rent optimeringsmässigt ska man ju inte pyssla med sessioner... men nu har jag kommit till ett vägsjäl där det faktiskt skulle vara quite handy med sessioner. Vad är det som suger kräm, att ha sessioner över huvud taget eller att ha mycket data i dom...?? session("xxx") = TRUE mitt förslag... \------------------ Never underestimate your opponents.

Läs frågan i sin helhet →
Medlem sedan jan. 2000144 inlägg
#21

Om inte jag minns fel fungerar Sessionerna ungefär så här:

För att en IIS’en skall identifiera vilken session som tillhör vilken användare används cookies. När Sessionen startas tilldelas användaren en Sessionsidentitet som placeras i användarens browser i form av en cookie. När användaren kommer tillbaka läser IIS’en av denna Sessionsidentitet och försöker matcha den mot en aktiv Session.

Det är därför man kan sätta Sessionerna ur spel genom att stänga av sin cookie-hanteringen.

Medlem sedan juli 20003 825 inlägg
#22

Då betyder det att sessions och kakor är nästan samma sak då?

Vad du säger är att det första som händer är att session.sessionID sparas som en kaka? Sen sparas de andra variablerna i minnet på servern utifrån den kakan?

Det låter ju rätt okej... schysst upplägg, det köper jag! ;-)

PHP då? Där finns det ju också sessioner... och i alla andra webbservrar... är det också kakor?! Nu kommer vi från ämnet lite... (men jag är lite nyfiken, särskilt php.)

------------------
Never underestimate your opponents.

Medlem sedan juli 20003 825 inlägg
#23

Eller vänta nu, om jag kör php på en iis, är det inte microsofts sessionshantering man använder i så fall!?

men vad händer om jag sen flyttar min sajt till en linux burk, fungerar inte sessionerna då?? måste kolla detta...

------------------
Never underestimate your opponents.

Medlem sedan dec. 19992 085 inlägg
#24

Hehe nu drar jag upp en riktigt gammal tråd men jag blev lite oroad när jag läste om att sessions skulle fungera nästan som cookies.

Sessionerna lagras väl aldrig på användarens dator? Hoppas jag? Jag brukar t.ex. hålla koll på administratörsrättigheter m.m. med hjälp av sessions och det är ju inte så bra om användaren kan gå in och ändra sina rättigheter själv.

Men om jag förstod MattiasW's inlägg rätt så är det lungt, cookies används bara som en del för att identifiera sessionen men innhåller ingen viktig info?

Medlem sedan juni 200032 967 inlägg
#25

Sessionsvariabler hålls i serverns minne, men det lagras också en cookie i klientens minne, som hjälper servern att veta vilka sessionsvariabler som tillhör vilken klient.

Det enda som lagras i klientens sessionscookie är alltså ett ID.

Medlem sedan feb. 200520 inlägg
#26

Då drar jag i den här tråden på nytt.
Sessioncookien lagras i serverns minne och ett id i klientens dator, det borde ju vara ganska jobbigt för servern att hålla många samtidiga sessions i minnet samtidigt. Hur är det då med cookies? Behöver servern hålla något i minnet där eller är det bara på användarens dator?
Skulle cookies kanske vara att föredra prestandamässigt vid en inloggningsfunktion till en sajt med många användare?

Medlem sedan juni 200032 967 inlägg
#27

Hur är det då med cookies? Behöver servern hålla något i minnet där eller är det bara på användarens dator?

Vad gäller cookies lagras endast data hos klienten, antingen på disk eller i minnet. Men, däremot skickas cookien till servern vid varje request, och läggs i cookie collection på servern, där den finns under tiden att varje asp-sida exekveras.

Sessionsvariabler är ganska vettigt, så länge man ser till att inte lagra allt i sessions. Du kan ju lätt räkna ut hur mycket data som lagras i serverns minne, och serverns minne är snabbare än tiden det tar att skicka cookien fram och tillbaka till klienten hela tiden.

mvh

Medlem sedan feb. 200520 inlägg
#28

@nders skrev:

Sessionsvariabler är ganska vettigt, så länge man ser till att inte lagra allt i sessions.

Det enda jag behöver kontrollera är ett id och det gör jag på varje sida. Sen kollar jag det id:t mot databasen så att användaren verkligen finns. Därifrån plockar jag de ytterligare uppgifter jag behöver om användaren.

Säg att det är 20 användare som är inloggade samtidigt. Är det lättare för servern att hålla dessa 20 id i minnet än att kolla mot en cookie på klienten?

Medlem sedan juni 200032 967 inlägg
#29

Jag hade helt klart valt sessionsvariabler i ditt fall. Det är dessutom svårare att manipulera än ett cookievärde.

Mvh

Medlem sedan feb. 200520 inlägg
#30

OK, tack. Då fortsätter jag med det.

260 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
115 ms — ändringar (db)