Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] sesje na ramie. Czy to możliwe ?
Forum PHP.pl > Forum > PHP
Black-Berry
Czy jest możliwość aby w PHP zamiast pakować sesje do plików trzymać je w RAM-ie ? Szkoda za każdym razem zapisywać i odczytywać. To trochę zbędne.
Black-Berry
A tak na poziomie PHP? Na serwerach współdzielonych ?
dr_bonzo
Pytanie w stylu: A jak jechac maluchem bez przerobek 180 po polskiej autostradzie?
Black-Berry
eee czemu? trochę to dziwne ze nie można trzymać danych poiędzy wykonaniami skryptów. Dziwne że w PHP nie ma takiego mechanizmu. Rozumiem z tego co mówisz że parser php odpala sie za kazdym razem wykonania skryptu. Ale mogłoby być przecież inaczej. Program mógłby być cały czas odpalony na apachu i tylko czekałby na kolejne zgłoszenia. Jeśli się tego nie wie wcześniej to trudno nie zadać takeigo pytania.
dr_bonzo
Aaaa, tobie o to chodzi.
Ja myslalem o RAMdisku ktorego uzywasz jak zwykly system plikow.
Bo PHP+mod_php + apache tak dzialaja, co request to wszystko idzie od nowa.
Hmm, ktos kiedys myslal zeby napisac serwer aplikacji (cos co opisales wyzej) dla php, ale nic nie powstalo.
W Rubym, Javie cos takiego znajdziesz, tam po prostu caly czas jest wlaczona aplikacja i odbiera requesty, a nie odpalana co chwile.

No i zawsze masz http://en.wikipedia.org/wiki/Memcached
Black-Berry
ale tobie chodzi o tabelę mysql w ramie ? Ponoć to działa tylko dla zmiennych VARCHAR(255)

chyba jednak nie smile.gif Nie bardzo czaję co to jest ten Memcached.
rybik
Dlatego jest na plikach, że system plików oferuje szereg narzędzi i zabezpieczeń do obłsugi. Nie bardzo wyobrażam sobie:
- jak chciałbyś udostępniać miejsce w pamięci dla danego skryptu z limitem i okreslać sposób współdzielenia ? system plików to ma od zawsze
- dlaczego miałbym poświęcać cenną pamięć na "śmieci" od userów
- jak obsłużyć błędy takiego systemu

Poza tym system buforowania i cacheowania plików wykorzystuje pamięć i stosuje leniwy zapis, pliki nie zmienione nie są zapisywane a częste zapytania są cacheowane. W ten sposób masz najlepsze z najlepszych: szybkość dostępu do popularnych danych (oklaski dla pamięci) i dużą ilość bezpiecznego i łatwo zarządzalnego miejsca (ukłon dla dysku).

Na serwerach współdzielonych to byłby koszmar a na dedykowanych przeciez możesz sobie zrobić jakis ramdisk i tam ustawić katalog sesyjny, nie ?

Co do inicjowania aplikacji za każdym requestem to warto chyba sobie policzyć czas takiej operacji i dostrzec jego znikomy udział w generowaniu strony, jeżeli chodzi o odciążenie serwera to wracamy do tematu dobrego systemu cachowania, tymczasowych plików kodu statycznego itp.
Black-Berry
no i znowu panikuję niepotrzebnie winksmiley.jpg dzieki za wyczerpującą odpowiedź.
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.