Tak jak Olek napisał.
Zmienne globalne są niekoszerne nie tylko z powodów religijnych (te, same z siebie, nie są żadnym argumentem IMO), ale bardzo prozaicznych praktycznych: zmienna globalna jest globalna dla procesu. To znaczy, że drugi mongrel/unicorn (albo druga instancja aplikacji odpalona przez passengera, cokolwiek) nie widzi zmiennej globalnej ustawionej w pierwszym i vice versa. Czyli do dupy.
Właśnie dlatego używa się innych narzędzi do persystencji w pamięci, jak memcached czy redis.
[quote=Tomash]Tak jak Olek napisał.
Zmienne globalne są niekoszerne nie tylko z powodów religijnych (te, same z siebie, nie są żadnym argumentem IMO), ale bardzo prozaicznych praktycznych: zmienna globalna jest globalna dla procesu.[/quote]
To się rozumie. Napisałem, com napisał, bo to “wali po oczach” tak, że trudno normalnie to skomentować.
No dobra, kumam ze zmienna globalna jest zla, ale skoro krytyka to prosze jakas konstruktywna (dzialajacy kawalek kodu, jakis odnosnik do przykladu, cokolwiek )
Pozdrowienia
konstruktywnie juz dostales, ale powtorze po raz drugi: memcached
Zastosowalem memcached, dziala, co prawda kod sam mnie w oczy szczypie, ale jakos nie mam pomyslu na refaktoryzacje. Jakies sugestie ?
Jak to sensownie rozwiazac, zeby przy kazdym requescie http, cache sie czyscil, nie chodzi mi o caly memcached, ale tylko ten hash, ktory tu jest wykorzystywany… Gdzie umiescic najlepiej metode za to odpowiedzialna, moze zrobic jakas klase do zapisu i odczytu tego hasha ? Jesli tak, to gdzie ja najlepiej umiescic ?
Pozdrowienia