Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Sesje - pytanie teoretyczne, jak wiele danych moze przechowac tablica $_SESSION
comanderv
post
Post #1





Grupa: Zarejestrowani
Postów: 87
Pomógł: 1
Dołączył: 2.12.2008

Ostrzeżenie: (0%)
-----


witam,
buduje od dłuższego czasu pewien skrypt oparty w dużej mierze na sesjach i ich zmiennych i w pewnym momencie dochodzę do momentu, w którym sam siebie pytam, a co jeśli dojdzie do jakiegoś overloada ...
rzecz w tym, że mam dość pokaźne tablice w sesji ($_SESSION['cos'][...]), stąd moje pytanie, jak duże możliwości daje takie zastosowanie i czy ewentualne przekroczenie wydajnej wielkości tych tablic leży wtedy w gestii serwera czy też klienta i jego przeglądarki?
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
gestii serwera czy też klienta i jego przeglądarki
To moze poczytaj coś najpierw o sesjach, bo jak sie martwisz ze sesja zalezy od przeglądarki to masz małą wiedzę na ten temat (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
wry
post
Post #3





Grupa: Zarejestrowani
Postów: 32
Pomógł: 3
Dołączył: 9.06.2007

Ostrzeżenie: (0%)
-----


jesli dzialasz na sesjach to ograniczony jestes do miejsca na dysku jesli sesje przechowywane sa na dysku badz ogrniaczenia wiskosci bazy jesli sesja przechowywana jest w bazie co tak na prawde sprowadza sie do ograniczenia miejsca na dysku
Go to the top of the page
+Quote Post
webdice
post
Post #4


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Cytat(wry @ 18.12.2009, 15:27:26 ) *
jesli dzialasz na sesjach to ograniczony jestes do miejsca na dysku (...)


Bzdura, zmienne sesyjne są rzeczywiście przechowywane na dysku, ale w momencie ich czytania są kopiowane do pamięci. Więc teoretycznie jesteś ograniczony do wielkości pamięci.

Dodatkowo, zmienne sesyjne są serializowane, a jak wiadomo mechanizm serializacji/deserializacji nie jest zbyt wydajny. Przykładowo w danym skrypcie odczytujesz jedną zmienną, a i tak cały plik jest deserializowany co jest strasznym marnotrawieniem zasobów. O wiele lepszym rozwiązaniem będzie przechowywanie sesji w bazie danych, gdzie jeden rekord będzie odpowiadał jednej zmiennej.
Go to the top of the page
+Quote Post
comanderv
post
Post #5





Grupa: Zarejestrowani
Postów: 87
Pomógł: 1
Dołączył: 2.12.2008

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 18.12.2009, 14:17:37 ) *
To moze poczytaj coś najpierw o sesjach, bo jak sie martwisz ze sesja zalezy od przeglądarki to masz małą wiedzę na ten temat (IMG:style_emoticons/default/winksmiley.jpg)

różne przeglądarki róznie reagują, taki IE powiedzmy przy zbyt dużej ilości danych może sie odrazu wieszac a mozilla powiedzmy ze zwolni...
Cytat
wiele lepszym rozwiązaniem będzie przechowywanie sesji w bazie danych

to teraz zabiłeś mi klina bo bawiłem sie tymi wielkimi tablicami sesyjnymi po to żeby nie babrać sie mysql'em ;/
Go to the top of the page
+Quote Post
mike
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Cytat(comanderv @ 18.12.2009, 15:56:48 ) *
różne przeglądarki róznie reagują, taki IE powiedzmy przy zbyt dużej ilości danych może sie odrazu wieszac a mozilla powiedzmy ze zwolni...
Różnie ludzie reagują.
Jeden poczyta a drugi dalej pieprzy głupoty. No ale cóż, może się uda więc zaryzykuję podpowiedź:
To moze poczytaj coś najpierw o sesjach, bo jak sie martwisz ze sesja zalezy od przeglądarki to masz małą wiedzę na ten temat (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 3.10.2025 - 22:55