MMattiasWMedlem sedan jan. 2000144 inlägg 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.
EEclipseMedlem sedan juli 20003 825 inlägg 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.
EEclipseMedlem sedan juli 20003 825 inlägg 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.
MM@rtinMedlem sedan dec. 19992 085 inlägg 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?
@ndersMedlem sedan juni 200032 967 inläggSessionsvariabler 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.
LlenapMedlem sedan feb. 200520 inlägg 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?
@ndersMedlem sedan juni 200032 967 inlägg
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
LlenapMedlem sedan feb. 200520 inlägg
@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?
@ndersMedlem sedan juni 200032 967 inläggJag hade helt klart valt sessionsvariabler i ditt fall. Det är dessutom svårare att manipulera än ett cookievärde.
Mvh
LlenapMedlem sedan feb. 200520 inlägg OK, tack. Då fortsätter jag med det.