PDA

Zobacz pełną wersję : Ponadnormatywne zużycie pamięci RAM na serwerze



ProZak
07-02-2012, 20:57
Witam,
w niedzielę otrzymałem następującą informację od dostawcy serwera - netlook.pl:

"Skrypt na Państwa koncie w katalogu public_html powoduje ponadnormatywne zużycie pamięci RAM na serwerze - obecnie w pewnych momentach zużycie przekracza 250 MB przy limicie 32 MB dla procesu PHP.Prosimy o preprowadzenie optymalizacji skryptu w celu wyeliminowania problemu. Jeżeli samodzielnie definiowali Państwo ilość pamięci przydzielanej dla skryptu - np. przez funkcję ini_set(), proszę zmniejszyć tę wartość do limitu 32 MB lub maksymalnie 64 MB. Cykliczne przekraczanie dozwolonych wartości progowych dla skryptów może być powodem automatycznej blokady konta."

Zacząłem robić optymalizację strony, powyłączałem część modułów (szczególnie tych generujących reklamy). Do dzisiaj był spokój, nawet dostałem rano informację, że strona nie generuje już dużego zużycia pamięci. Niestety przed chwilą przyszła kolejna wiadomość od dostawcy, że skrypt zużywa momentami nawet 260 MB pamięci podczas przetworzenia. Ich logi informują o pliku index.php. Niestety ja już załamuję ręce, bo nie wiem co może być grane.Prosiłbym o Waszą pomoc. Co można zrobić i czy byłaby chętna osoba na sprawdzenie funkcjonalności działania witryny.

Dodam, iż serwis oparty jest na Joomli 1.5.22.

palyga007
07-02-2012, 21:08
Aktualizacja i lista komponentow wykorzystywanych na stronie. To na poczatek.


Wysłane z mojego GT-S5830 za pomocą Tapatalk

ProZak
07-02-2012, 21:21
Bardzo chętnie bym to zrobił, lecz niestety nie ma jeszcze kompatybilnej z nową Joomlą wersji komponentu Mighty Resources, na którym mam prawie oparty cały serwis.
Poza tym komponentem, używam:
AlphaUserPoint
Artio JoomSEF
ccNewsletter
CB
Kunena
Frontpage Slideshow
JComments
JoomGallery

trzepiz
07-02-2012, 21:55
sprawdź czy wszystkie z wymienionych komponentów są w najnowszych wersjach ...

Poza tym .. Mówimy o aktualizacji (na początek) do 1.5.25 .. (więc Mighty Resources musi działać)

neo_fox
07-02-2012, 21:56
LOL :lol:

Sorry ale nie mogłem się powstrzymać :podstep:

http://support.mightyextensions.com/en/mighty-resources-cck-joomla-component/all/My+Website+Got+Suspended+%26+Plenty+of+Error+in+er ror_log-965.html
http://forum.joomla.org/viewtopic.php?p=2377200
http://www.mightyextensions.com/support-desk-forum/item/tickets-topics/63-commerce/19756-resources-brings-my-site-down

itd

trzepiz
07-02-2012, 22:04
no to mamy komplet .. :)

neo_fox
07-02-2012, 22:10
no to mamy komplet

Znam Komponent także wiesz.
Zasadniczo to konkurencja także obserwuje :podstep:

Szczególnie rozbrajające było jak rok czy dwa lata temu ich własna strona była notorycznie rozbrajana przez tureckich hackerów :hmm:

ProZak
08-02-2012, 08:35
Wcześniej nie miałem takich problemów z Mighty, tym bardziej żadnych komunikatów od netlook.
Dodam, że parę dni wczesniej zaczął się problem z "Fatal error: Allowed memory size of ******** bytes exhausted" przy skrypcie np. JoomSEF (problem ten występował tylko dla niektórych użytkowników i po odświeżeniu strony głównej znikał). Dodałem funkcję ini_set() zwiększając limit z 32MB do 64MB w pliku index.php. Po pierwszym komunikacje od netlook usunąłem tą funkcję i rozwaliło mi całą stronę główną z błędem Allowed memory ale tym razem przy skrypcie od CB.
Aktualnie funkcję dopisałem, tylko zastanawia mnie dlaczego serwis zżera aż ponad 250MB RAM.

neo_fox
08-02-2012, 08:55
Ten komunikat ma to do siebie że,w przeciwieństwie do innych komunikatów o błędach z PHP, jest zupełnie nieistotne w którym miejscu w kodzie skryptu on występuje.
Możesz spróbować włączyć Joomla! debug aby zobaczyć co zjada najwięcej pamięci. Ale nie wiem czy Ci to wiele pomoże.
32 MB to na dzień dzisiejszy raczej dolna granica. Ale z 64 MB strona powinna działać bezproblemowo.


Wcześniej nie miałem takich problemów z Mighty

Co nie oznacza że to rozszerzenie nie jest przyczyną problemu.
Wcześniej pewnie miałeś też mniej wpisów/treści w tym komponencie niż teraz.

JoomSEF może też po dłuższym czasie powodować problemy. Jest to ogólnie znany fakt że komponenty do generowania SEF URL są bardzo żarłoczne.
Dlatego jeśli jest taka możliwość, zawsze lepiej korzystać z core Joomla! SEF.

ProZak
08-02-2012, 11:24
Koledzy, co radzicie? Od czego mam zacząć? Zmiana CCK byłaby chyba kłopotliwa (w Mighty w bazie mam ponad 2000 opisów książek, filmów, gier).

ProZak
09-02-2012, 13:25
Zacząłem od aktualizacji Joomli do 1.5.25. Niestety nadal jak nie dopiszę funkcję ini_set('memory_limit','64M'); na stronie głównej błąd Allowed memory size of ******** wywala cb_core.php

ProZak
29-02-2012, 12:33
Ponownie otrzymałem informację od dostawcy, że index.php zużywa ponad 260 MB pamięci przy przetwarzaniu procesu.
Zaktualizowałem wszystkie komponenty, usunąłem funkcję ini_set('memory_limit','64M'); z pliku index.php i nadal mam taki info z diagnostyki Joomla:

Application afterLoad: 0.001 seconds, 0.53 MB
Application afterInitialise: 0.068 seconds, 10.23 MB
Application afterRoute: 0.081 seconds, 11.25 MB
Application afterDispatch: 0.117 seconds, 14.01 MB
Application afterRender: 0.170 seconds, 16.10 MB
Użycie pamięci


16931568
Zapytań do bazy danych: 23

Nie wiem już co mogę zrobić aby zmniejszyć tak wysokie zżeranie RAMu :(

ProZak
06-07-2012, 14:55
Drodzy pragnę odświeżyć temat, gdyż ponownie otrzymałem ostrzeżenie od BOK netlook.pl:

"Mimo braku kontaktu z naszej strony od marca, musimy Pana poinformować, że codziennie otrzymujemy kilkanaście raportów o procesach PHP na koncie -----, których rozmiar pamięci RAM przekracza 260 MB, przy dozwolonym limicie 64 MB.


Prosimy w ciągu kolejnych 7 dni podjąć zdecydowane i ostateczne działania mające na celu wyeliminowanie problemu. Brak reakcji będzie wymuszał na nas blokowanie dostępu do strony na koncie ----, ponieważ nie możemy dłużej tolerować przekraczania zasobów przez konto."

Proszę Was o pomoc. Czy będzie ktoś chętny przeanalizować działanie portalu?

zwiastun
06-07-2012, 15:32
Otrzymałeś bardzo kompetentną odpowiedź @neo_foxa. Czego jeszcze oczekujesz? Cudów raczej nie ma. Jeśli nie wchodzi w grę zmiana żarłocznego CCK, to pozostaje ponieść konsekwencje nadmiernego zapotrzebowania na pamięć - wykupienie serwera dedykowanego albo własnego.

ProZak
09-07-2012, 08:29
Dziękuję za wyjaśnienia. Niestety aktualnie zmiana CCK wiązałaby się z przepisywaniem ponad 3000 opisów książek, filmów, gier itp. Z drugiej strony ciężko mi znaleźć na rynku taki komponent, który spełniałby moje wymagania (SOBI niestety trochę ma braki, zaś ZOO brakuje kilku rozwiązań, które miał Mighty).
Chyba jedynym sensownym dla mnie wyjściem na dzień dzisiejszy pozostanie zmiana usługodawcy, na takiego, który pozwala na limit pamięci 256MB.