Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Sesje w PHP co w nich trzymać?
Forum PHP.pl > Forum > Przedszkole
szok
Witam,

Dałem temat do przedszkola, ale w sumie sam nie wiem gdzie powinien być.

Mam pytanie spotkałem się z stroną która trzyma praktycznie wszystko w sesji (wszelka konfiguracje, tłumaczenia stron, informacje o produktach, w sumie większość treści strony) strona ta ładuje się 10 sekund sad.gif

I mam pytanie CO i DLACZEGO powinno być w sesji a co nie? Jakie elementy? czy ładować każdą rzecz co się da do sesji ?
Oraz czy zbyt duża wielkość sesji wpływa na szybkość ładowania się strony www?


Może i to głupie pytania ale, wole się spytać specjalistów, sam w sesji trzymam tylko kilka danych, takich jak informacje o loginie, i mała konfigurację.

Pozdrawia serdecznie i proszę o pomoc.
Jeżeli temat jest w złym miejscu proszę o przeniesienie.
Crozin
W sesji przechowujesz tylko to co w niej musi być (czyli dane potrzebne pomiędzy dwoma żądaniami) oraz to co się opłaca (czyli zapis/odczyt tego z sesji jest wymiernie szybszy niż każdorazowe dopieranie się ze źródła pierwotnego - no i oczywiście jest to wymagane na każdej/większości podstron - np. uprawnienia użytkownika)

Ilość danych w sesji w teorii wpływa na szybkość ładowania strony (w końcu trzeba ją odczytać), ale póki nie jest to jakiś wybryk natury, gdzie dane zapisane w sesji liczymy w MB to raczej nie jest to warte uwagi (pod względem szukania wydajności).
potreb
No tak w sesji możemy trzymać całą treść strony, ale po co? Chyba naprawdę trzeba mieć problemy z zapytaniami do db.
szok
Czyli można i tak i tak, ale pewnie lepiej nie ładować tych dnaych aż tyle do sesji.

Lepiej wyjdzie cashowanie zapytań SQL, niż trzymanie tych danych w bazie : )

Dobrze rozumiem?

A i jeszcze jedno małe pytanko, strona jest napisana w CakePHP, korzysta z dwóch baz dnaych mysql do tresci i postgresql do katalogu prdouktów i informacji o uzytkonwnikach, plus wszelkie tłumaczenia są w plikach tekstowych które maja sporo MB (4 języki) i dopiero później jest robiona tablica z tłumaczeniami na podstawie zwykłych wpisów w pliku tekstowym.

Plus strona wszelkie najważniejsze moduły strony (jak nie wszystkie: strona główna, katalog produktów, wszelkie dane które są wyświetlane na stronie) są napisane jako plugin w cakephp a nie jako zwykłe kontrolery/modele i widoki. To ma jakieś znaczące znaczenie jeśli chodzi o szybkość działania tej aplikacji?


Pozdrawiam i dziękuje za odpowiedzi. Przepraszam za mały offtopic.
!*!
W sesji trzymasz dane "krótkie" czyli info o zalogowanym użytkowniku, id, login, czas logowania, useragent, język. I to w zasadzie powinno być wszytko. Poza tym trzymanie tłumaczeń w plikach które mają kilka MB to jakieś nieporozumienie.
szok
A jak z szybkością:
zwykły kontroler Czy plugin w cakephp ?

Czy takie rzeczy właśnie jak strona www i jej moduły nie powinny być pisane jako zwykły kontroler?
Czy jako plugin może być?

Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.