Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> eAccelerator - metody put i get
radone
post
Post #1





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 4.01.2009

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


Witam,

mam problem z którym nie mogę sobie poradzić. Potrzebuje zapisać do kesza pewne dane za pomocą metody eaccelerator_put(). Wszystko prawie działa mi poprawnie, załóżmy ze mam plik index,php w public_html i w nim kawałek kodu:

eaccelerator_put( 'klucz', 'wartosc', 3600);

i na końcu gdzieś pobieram z kesza informacje eaccelerator_get('klucz');
Tak jak pisalem wszystko działa pięknie, ale ... mam rowniez skrypt w shell'u ktory jest wykonywany co kilka minut, ten skrypt odpala co jakiś czas plik np. index2.php w ktorym znajduje się metoda eaccelerator_put( 'klucz', 'wartosc', 3600); ktora wstawia do kesza dane. Problem pojawia się w momencie kiedy te dane sa wstawiane, z loga wynika ze operacje się udają i dane są zapisywane do kesza, lecz jak juz odpale plik index.php - tradycyjnie poprzez przeglądarkę to już tych danych tam nie ma ... zwraca pustkę i jak metodą eaccelerator_list_keys() wypiszę wszystkie klucze które są zapisane do kesza to tych nowych tam nie ma ... tak jakby jakaś przestrzeń nazw i w innej części kesza się to zapisuje ?

Ma ktoś z tym jakieś doświadczenie lub pomysł jak to pokonać ?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Mhmm, to też zależy od tego, w jaki sposób są oba skrypty odpalane.

W dokumentacji eAccelerator jest zaznaczone, że interpreter musi być zainstalowany albo jako aplikacja FastCGI, albo jako moduł SAPI serwera. Jeśli wykonujesz przez powłokę bezpośrednio z poziomu interpretera, korzysta on z pamięci innej instancji interpretera.

Dlatego nie można polegać na tym w 100%. Idealne byłoby użycie tutaj memcached, do którego podłączają się wszystkie interpretery niezależnie od procesu.

Reasumując - spróbuj wykonywać skrypt z powłoki nie przez php..., tylko przez wget i URL do tego skryptu (ważne, aby się podłączyć do tej samej przestrzeni pamięci z obu wywołań).


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
radone
post
Post #3





Grupa: Zarejestrowani
Postów: 15
Pomógł: 0
Dołączył: 4.01.2009

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


dzięki za odpowiedz ... jak odpalam jako wget to wszystko dziala prawidlowo ... czy da się coś z tym zrobić, nie chce odpalać tego jako wget, bo jak bedzie problem z łączem to skrypt się nie wykona ...
Go to the top of the page
+Quote Post
ActivePlayer
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

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


jesli na tej samej maszynie jest wywolanie lokalne oraz serwer dns, to nie bedzie problemów nawet w przypadku gdy łącze padnie bo serwer odwoła się do swojego ip
Go to the top of the page
+Quote Post
jotojo
post
Post #5





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 1.03.2010

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


podłącze się do tematu..
mam podobną sytuację i chyba kombinuje jak radone...
i spełnia warunki jak pisze ActivePlayer, ale jednak jak jest przerwa w serwerze to przerywa działanie i nie wykonuje się skrypt.
hmm, nie wiem czemu... może nie tu tkwi problem, może coś w skrypcie, ech już nie wiem sam.
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Bez szczegółowego opisu się za wiele nie da powiedzieć...


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 21.08.2025 - 21:43