See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 17168|Vastuse: 1

[Allikas] Sessiooni elutsükkel

[Kopeeri link]
Postitatud 19.04.2015 19:44:59 | | |
Ma ei pööranud sellele varem palju tähelepanu, kui õppisin, aga täna läksin tagasi ja uurisin hoolikalt sessiooni elutsüklit.
Sessioonid salvestatakse serveri poolele ning üldiselt, et vältida nende sattumist serveri mällu (kiireks ligipääsuks), loob Sessinon kasutaja esimese ligipääsu serverile.Pane tähele, et sessiooni loob ainult JSP, Servlet ja teiste programmide kasutamine ning ainult staatiliste ressursside, nagu HTML ja IMAGE, kasutamine ei loo sessiooni.
  Millal sessioon lõpeb?
1. Server kustutab sessiooni serveri mälust, mis on olnud pikka aega passiivne, ja sessioon muutub kehtetuks. Tomcati sessiooni vaikimisi aegumisaeg on 20 minutit.
2. Kutsu sessiooni tühistamise meetod.
  Sessiooninõuded brauseritele:
 Kuigi sessioon salvestatakse serverisse ja on kliendile läbipaistev, vajab selle tavapärane toimimine siiski kliendi brauseri tuge. See on tingitud sellest, et Session peab identifikaatorina kasutama küpsiseid. HTTP protokoll on olekuta ja sessiooni ei saa HTTP-ühenduse järgi hinnata, et määrata, kas tegemist on sama kliendiga, seega saadab server kliendibrauserile küpsise nimega JSESSIONID, millel on sessiooni id-väärtus (st HttpSession.getId()) tagastamise väärtus. Sessioon kasutab küpsist, et tuvastada, kas tegemist on sama kasutajaga.

See küpsis genereeritakse automaatselt serveri poolt ning selle maxAge atribuut on tavaliselt -1, mis tähendab, et see kehtib ainult praeguses brauseris, ei ole jagatud brauseriakende vahel ega kehti brauseri sulgemisel. Seega, kui kaks brauseriakent samal masinal serverile ligi pääsevad, genereeritakse kaks erinevat sessiooni. Välja arvatud uued aknad, mis avanevad linkide, skriptide jms kaudu brauseri aknas (st mitte aknad, mis avanevad topeltklõpsuga töölaua brauseri ikoonidel jne). Need lapsaknad jagavad vanemakna küpsist ja seega ka sessiooni.

Märkus: Uued sessioonid genereeritakse äsja avatud brauseriakendes, välja arvatud alam-aknad. Lapsaken jagab vanemakna sessiooni. Näiteks, kui sa paremklõpsad lingil ja valid otsetee menüüs "Ava uues aknas", pääseb lapseaken ligi vanema akna sessioonile.

Mis saab siis, kui kliendibrauser keelab küpsised või ei toeta küpsiseid? Näiteks enamik mobiilibrausereid ei toeta küpsiseid. Java Web pakub veel üht lahendust: URL-aadressi ümberkirjutamist.
URL-aadressi ümberkirjutamine on lahendus klientidele, kes ei toeta küpsiseid. URL-aadressi ümberkirjutamise põhimõte on kasutaja sessiooni id-info ümberkirjutamine URL-aadressiks. Server saab ümberkirjutatud URL-i parsida, et saada sessiooni id. Nii saab isegi kui klient ei toeta küpsiseid, sessiooni abil salvestada kasutaja seisund. HttpServletResponse klass pakub encodeURL-i (String url) URL-aadressi ümberkirjutamiseks, mis määrab automaatselt, kas klient toetab küpsiseid. Kui klient toetab küpsiseid, väljastatakse URL sellisena, nagu see on. Kui klient ei toeta küpsiseid, kirjutatakse kasutajasessiooni ID URL-ile ümber.
Märkus: TOMCAT määrab, kas kliendibrauser toetab küpsiseid, lähtudes sellest, kas päringus on küpsis. Kuigi klient võib toetada küpsiseid, kuna esimesel päringul küpsiseid ei kanta (sest küpsiseid, mis seda võimaldaksid), on ümberkirjutatud URL-aadressil siiski jsessionid aadressis. Server on juba teisel visiidil brauseris küpsise kirjutanud, seega ümberkirjutatud URL-aadressil ei ole aadressis jsessionid.





Eelmine:HTML-nipp muuta tabeli äär õhukeseks jooneks
Järgmine:Loo kohandatud failivahemälu ASP.NET jõudluse optimeerimist
Postitatud 18.03.2017 16:52:21 |
See on väga hästi kirjutatud, õpi!
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com