PDA

Zobacz pełną wersję : PILNE: Przeciążenie systemu, konieczna dramatyczna optymalizacja serwisu



maslow_info
29-11-2008, 14:24
Witam.
W dniu dzieisjzym otrzymałem taką oto wiadomość od firmy, na któej mam wykupione usługi hostingowe:

Niestety Panstwa konto bardzo mocno przeciaza klaster hostingowy. Obciazenie na tego typu poziomie niestety nie jest mozliwe ze wzgledu na ograniczona ilosc mocy obliczeniowej przypisanej do konta. Niestety - tak duza ilosc mocy dostepna jest tylko na serwerach dedykowanych. Prosze o bardzo pilna reakcje i przeniesienie serwisow poza nasze serwery lub dramatyczna ich optymalizacje. Niestety w przypadku braku reakcji bedziemy zmuszeni zawiesic konto i wypowiedziec umowe na swiadczenie uslug.

Bardzo prosze o pomoc, jak "dramatycznie zoptymalizować" serwis.
Moja wersja Joomla: Joomla! 1.0.11 Stable
Komponentów jest niewiele, z tych poważniejszych tylko: ZooM Media Gallery oraz AkoComment
Od pewnego czasu występują problemy z serwisem, bardzo długo się ladował, czasem był niedostępny. Wyglądało to na problem z baą danych.
Zgodnie z sugestiami ograniczyłem statystyki. Wydawało się, że to nieco pomogło, ale problemy są nadal, no i teraz ta wiadomość.
Powiem też, że od dłuższego czasu liczba użytkowników on-line jest dość duże, zdecydowanie wyższa niż liczba jakiej się spodziewam. Czy to jakieś roboty, które próbują się dostać do strony? Nie wiem.
Strona jest bardzo rozbudowana, kilka tysięcy podstron, sporo modułów.

Bardzo proszę o jakieś wskazówki, co robić?

nemo
29-11-2008, 17:18
Wpierw popros admina o udostepnienie logow, jesli takowych nie posiadasz. Ktorys z komponentow moze faktycznie generowac bledne zapytania do sql ale przyczyny moga byc tez inne. Poprostu za malo danych na diagnoze, a wiec tym bardziej na recepte.

exclusive_
01-12-2008, 17:14
Witam serdecznie, joomla jest bardzo wadliwa. Prowadze portal, który ma około 100 000 uu miesięcznie, tez mam ten problem.

zwiastun
01-12-2008, 18:43
Ble ble ble. Wybacz, ale to dosadna ocena tego, coś napisał.

exclusive_
01-12-2008, 18:44
no wybacz, ale z joomlą mam problemy cały czas;)

zwiastun
01-12-2008, 18:55
To ją wyrzuć, nikt nie każe Ci jej używać, skoro masz problemy. Równie dobrze mogę napisać, że Ty jesteś bardzo wadliwy.

nemo
02-12-2008, 00:36
zwiastun zgryzliwy jak zwykle ;)
exclusive, nic nie jest doskonale. Nikt tez z core team nie gwarantuje poprawnego dzialania Joomli na kazdym mozliwym srodowisku, tego po prostu nie da sie przetestowac pod takim katem. Doswiadczenia wskazuja jednak, ze wiekszosc problemow z J wynika z:
- instalacji z niezalecanymi ustawieniami srodowiska PHP,
- uzytkowania starych wersji J, jak i komponentow/botow/modulow,
- zle napisanych komponentow/botow/modulow.

Zatem wypada wiec przyjrzec sie wlasnym dzialaniom jako administratora J, a dopiero pozniej wieszac psy na tworcach.

maslow_info
02-12-2008, 15:32
Powróćmy jednak do tematu


Problem lezy w folderze maslow-info-pl/joomla Wywolywany tam skrypt jest bardzo czesto wykonywany i generuje gigantyczne obciazenie.


Taką informację dostałem od dostawcy usług hostinowych.

W dostepnym WisePanelu jest informacja o obciążeniach serwerach, często pojawia się problem z komponentem ZooM Gallery. Mam go w wersji 2.5.1 RC2. Jest bardzo rozbudowany, ponad tysiąć zdjęć.
Naprawiłem też tabele narzędziem PhpMyAdmin. Wyczyćsiłem też dane z kilku, w których mogłem to zrobić. Jednocześnie zauważyłęm znaczne zwiększenie wydajności portalu. strony ładowały się zdecydowanie szybciej. Ale, jak twierdzi admin serwera, to może nie pomóc:


obawiam się, że niewiele to zmieni - chodzi przedewszystkim o obciążenie klastra obliczeniowego (php etc). Musi być wdrożony jakiś system keszowania lub optymalizacji php.



Za uważyłęm też, że licznik gości online jest często bardzo duży. Nie powinien przekraczać 20 osob online, czasem pokazuje jednak około 60, 70. Zastanawiam się czy to nie jakieś roboty, które się pchają i blokują serwer? Dodam, że ataki robotów, np. w komentarzach udało mi się już powstrzymać, nie zdarzają się.

nemo
02-12-2008, 20:11
Zatem zrob backup fotek i usun zooma, ktory i tak juz nie jest rozwijany. Jest mase innych ciekawych komponentow do obslugi galerii.

To, ze spam-roboty nie potrafia dodac komentarzy na Twojej stronie, nie oznacza, ze jej nie odwiedzaja. Ale to akurat da sie sprawdzic byle jakimi statystykami odwiedzin. Jednakze 70 sesji jednoczesnie (o ile counter dziala poprawnie) nie jest jakas oszolamiajaca liczba, ktora moze miec znaczny wplyw na wydajnosc serwera. W sieci mozna znalezc stosowne wpisy do .htaccess, ktore pozwalaja blokowac znane roboty spamerskie - moze warto sie tym zainteresowac?

maslow_info
04-12-2008, 18:15
Aktualizacja Joomla z wersji 1.0.11 najpierw do .13 potem do .15
Obawialem się tego, bo portal bardzo rozbudowany, ale z pomocą tego forum wszystko poszło gładko.

Czy to pomoże? Nie wiem? Czas pokaże.

Ale w WisePanelu z któego korzystam znalazłem takie coś - to statystyki - Obciążenie serwera MySql
http://maslow.info.pl/aktual/2008/12/baza.jpg
Wszystkie błędy dotyczą bazy danych, na ktorej stoi Joomla. Co możecie powiedzieć na ten temat? Dodam, że codziennie problemy najczęściej zdarzają się właśnie około godz 3 w nocy. Tylko od czasu do czasu w ciągu dnia bądź wieczorem.

PS.: Aktualizacja Joomla nie pomogła! Obciążenie jest nadal gigantyczne.

crazyluki
05-12-2008, 04:53
zainstaluj komponenty do cachowania statycznego ( w postaci plików html) oraz coś do cachowania samych zapytań do bazy danych ( query cache rc2)
wszystko do znalezienie na extensions.joomla.org w kategorii cache

maslow_info
05-12-2008, 19:19
Bardzo dziękuję za informację.

Zainstalowałem komponent o którym wspomniałeś. Czy musze na coś zwrócić szczególną uwagę?
http://maslow.info.pl/aktual/2008/12/babza2.jpg
Czy powinienem coś w tym zmienić, czy powinno zostać tak jak jest?

--

Zainstalowałem też inny komponent: PageCache 2.0
http://maslow.info.pl/aktual/2008/12/baza3.jpg
Jego konfiguracja wygląda następująco? Czy tak powinno być?

Jak informuje mnie admin serwra, największe obciążenie powoduje oczywiście index.php
Dostałem też taką informację:


Zrzut procesów z wykorzystanym czasem procesora z maszynami obliczeniowymi z tego klastra, czyli maszyny #4, #5, #6, #7, #8 Łączny czas wykorzystania procesorów w dniu dziesieszym: ok. 170min W przeliczeniu: serwowanie samego PHP 170minut na maszynach core2duo odpowiada wykorzystaniu pojedynczej takiej maszyny w ok. 50-70%. Doliczając MySQL, poczte, serwis powinien się bez zbyt dużego zapasu mocy zmieścić na średnim serwerze dedykowanym. Na zbyt słabym serwerze mogą być problemy z wydajnością.

I dość duży zrzut tych procesów.....
fragment:


Nod obliczeniowy #4:
=0.14 cpu 4592k mem php
=0.21 cpu 5894k mem php
=0.44 cpu 5572k mem php
=0.52 cpu 5566k mem php
=0.42 cpu 5622k mem php
=0.40 cpu 5756k mem php
=0.22 cpu 5886k mem php
=0.46 cpu 5562k mem php
=0.50 cpu 5516k mem php
=0.43 cpu 5920k mem php
=0.40 cpu 5926k mem php
=0.22 cpu 5652k mem php
=0.53 cpu 6004k mem php
........

crazyluki
05-12-2008, 23:03
dobrze skonfigurowałeś.

a to że index.php zżera najwięcej zasobów ?
no cóż - Joomla głównie tego pliku używa, do niego dołączając (includując) inne

maslow_info
07-12-2008, 17:01
Oba koponenty działają pod wskazaną wyżej konfiguracją, dodatkowo także JAccelerator.
Odpowiedź od admina:


Niestety bez zmian, 216.43min procesora 5 grudnia, 220.48 6 grudnia.
Więc praktycznie bez zmian.



Nieco wcześniej dostałem taką informację

Państwa strona ma nieoptymalnie zaprojektowane skrypty.
W chwili większego ruchu na serwerze MySQL mogą występować na Państwa stronie problemy z generowaniem strony.
Państwa baza joomla aktualnie jest z jedną najbardziej obciążających serwer baz danych.


mysql user:login_joomla
sum query time:8560
max query time:201
catched:343
query time per catch:25


Czy ktoś z Was spotkał się z takim problemem? Co może być przyczyną takiego obciążenia?

kurtz
07-12-2008, 20:16
może AkoComent v. 1.4.6 ??

maslow_info
07-12-2008, 22:29
Czy system komentarzy mógł powodować tak gigantyczne obciążenie serwera?



Zapytaj jeszcze o jedną rzecz.
Powiedzieliście, że komponenty (zrzut kilka postow wczesniej) są dobrze skonfigurowane.
Ale w jednym w "Time To Live" jest wartość = 300, w drugim - 600. Jaka powinna być optymalna?

kurtz
08-12-2008, 01:06
zależy kto lub co z niego korzysta lub skorzystał.

crazyluki
08-12-2008, 07:49
wczoraj nie zauważyłem ale korzystanie z dwóch komponentów do cachowania przyniesie 0 efekty...

użyj jednego (page cache bądź jaccelerator) i zobacz czy w katalogu cache tworzą się pliki/foldery. jak nie - ustaw chmod na poprawny...

nexus246
08-12-2008, 10:01
Insertów się skeszować nie da a tam są inserty. Zapytaj raczej admina czy przypadkiem o 3 w nocy nie robią backupów....

maslow_info
08-12-2008, 14:54
korzystanie z dwóch komponentów do cachowania przyniesie 0 efekty... użyj jednego (page cache bądź jaccelerator) i zobacz czy w katalogu cache tworzą się pliki/foldery. jak nie - ustaw chmod na poprawny...

Tak jak radziłeś, pozostawiłem tylko PageCache. Poniżej podję moją konfigurację, czy macie do niej jakieś uwagi? Czy powinienem coś zmienić?
http://maslow.info.pl/aktual/2008/12/bazzz01.gif

http://maslow.info.pl/aktual/2008/12/bazzz02.gif

http://maslow.info.pl/aktual/2008/12/bazzz03.gif

A tak to wszystko wygląda z perspektywy serwera:
http://maslow.info.pl/aktual/2008/12/bazzz04.gif

maslow_info
08-12-2008, 14:55
ciąg dalszy (ponieważ w poście może być max - 4 foto)


Postanowiłem też w modułach włączyć module cache:
http://maslow.info.pl/aktual/2008/12/bazzz05.gif
... również w konfiguracji globalnej:
http://maslow.info.pl/aktual/2008/12/bazzz06.gif


Bardzo proszę o wszelką pomoc.

strategist
31-01-2009, 19:26
mam podobne problemy dostałem info od administartora ze zpowodu za długiegoi czasu ilosci zpaytan do bazy jak nie usune problemu zamknie mi strone, czy Tobie pomogło?

exclusive_
31-01-2009, 19:35
nie pomogla optymalizacja session:) Moi administratorzy rozwiązali chyba problem - przeciążenie było powodowane przez ich backup - dotyczy nazwy.pl

strategist
31-01-2009, 19:46
mam tez porblem z nazwa pl
dostaelm maila od nich
Informuję, że Państwa bazy danych xxxx na serwerze xxxx działają w sposób niezbyt optymalny.
Platforma hostingowa współdzieli zasoby sprzętowe serwera między wielu użytkowników, którym NetArt gwarantuje jednakowo wysoką jakość świadczonych usług.
<O:p></O:p>
Poniższe zapytanie wyciąga jednorazowo dużą ilość danych co w rezultacie doprowadza do przekraczania przez Państwa parametru bezpieczeństwa.
SELECT a.id, a.introtext, a.fulltext , a.images, a.attribs, a.title, a.state FROM jos_content AS a INNER JOIN jos_categories AS cc ON cc.id = a.catid INNER JOIN jos_sections AS s ON s.id = a.sectionid WHERE a.state = 1 AND a.access <= 0 AND cc.access <= 0 AND s.access <= 0 AND (a.publish_up = '0000-00-00 00:00:00' OR a.publish_up <= '2009-01-30 15:14' ) AND (a.publish_down = '0000-00-00 00:00:00' OR a.publish_down >= '2009-01-30 15:14' ) AND a.catid = 28 AND cc.published = 1 AND s.published = 1 ORDER BY a.ordering
Proszę się ustosunkować do tej wiadomości i jak najszybciej usunąć problem, gdyż będziemy musieli zablokować Państwa bazę w razie braku zainteresowaniem w/w problemem.

moja strona to ebrzuszek.pl i nie wiem juz co mam robic

exclusive_
31-01-2009, 20:13
wejdź w bazę danych, zooptymalizuj tabelę session, zobacz ile ma nadmiaru. Jeżeli nadal będzie wzrastać, poproś nazwe o inną godzine backaupu

strategist
31-01-2009, 20:25
chodzi o tabele fe_sesion?
mam tam cos takiego jak to optymalizowac


<TABLE class=data id=tablespaceusage><CAPTION class=tblHeaders>Wykorzystanie przestrzeni</CAPTION><THEAD><TR><TH>Typ</TH><TH colSpan=2>Wykorzystanie</TH></TR></THEAD><TBODY><TR class=odd><TH class=name>Dane</TH><TD class=value>0</TD><TD class=unit>bajtów</TD></TR><TR class=even><TH class=name>Indeks</TH><TD class=value>1 024</TD><TD class=unit>bajtów</TD></TR><TR class=odd><TH class=name>Sumarycznie</TH><TD class=value>1 024</TD><TD class=unit>bajtów</TD></TR></TBODY></TABLE><TABLE class=data id=tablerowstats><CAPTION class=tblHeaders>Statystyka rekordów</CAPTION><THEAD><TR><TH>Cecha</TH><TH>Wartość</TH></TR></THEAD><TBODY><TR class=odd><TH class=name>Format</TH><TD class=value>zmienny</TD></TR><TR class=even><TH class=name>Metoda porównywania napisów</TH><TD class=value><DFN title="Środkowoeuropejski (wiele języków), bez rozróżniania wielkości liter">latin2_general_ci</DFN></TD></TR><TR class=odd><TH class=name>Rekordów</TH><TD class=value>0</TD></TR><TR class=even><TH class=name>Utworzenie</TH><TD class=value>01 Wrz 2008, 14:51</TD></TR><TR class=odd><TH class=name>Ostatnia aktualizacja</TH><TD class=value>01 Wrz 2008, 14:51</TD></TR></TBODY></TABLE>

strategist
31-01-2009, 20:29
mam jeszcze be_session
i tam ale nie bardzo wiem jak ja optymalizowac

<TABLE class=data id=tablespaceusage><CAPTION class=tblHeaders>Wykorzystanie przestrzeni</CAPTION><THEAD><TR><TH>Typ</TH><TH colSpan=2>Wykorzystanie</TH></TR></THEAD><TBODY><TR class=odd><TH class=name>Dane</TH><TD class=value>80</TD><TD class=unit>bajtów</TD></TR><TR class=even><TH class=name>Indeks</TH><TD class=value>2 048</TD><TD class=unit>bajtów</TD></TR><TR class=odd><TH class=name>Sumarycznie</TH><TD class=value>2 128</TD><TD class=unit>bajtów</TD></TR></TBODY></TABLE><TABLE class=data id=tablerowstats><CAPTION class=tblHeaders>Statystyka rekordów</CAPTION><THEAD><TR><TH>Cecha</TH><TH>Wartość</TH></TR></THEAD><TBODY><TR class=odd><TH class=name>Format</TH><TD class=value>zmienny</TD></TR><TR class=even><TH class=name>Metoda porównywania napisów</TH><TD class=value><DFN title="Środkowoeuropejski (wiele języków), bez rozróżniania wielkości liter">latin2_general_ci</DFN></TD></TR><TR class=odd><TH class=name>Rekordów</TH><TD class=value>1</TD></TR><TR class=even><TH class=name>Długość rekordu ø</TH><TD class=value>80</TD></TR><TR class=odd><TH class=name>Rozmiar rekordu ø</TH><TD class=value>2 128 bajtów</TD></TR><TR class=even><TH class=name>Utworzenie</TH><TD class=value>01 Wrz 2008, 14:51</TD></TR><TR class=odd><TH class=name>Ostatnia aktualizacja</TH><TD class=value>01 Wrz 2008, 14:51</TD></TR></TBODY></TABLE>

exclusive_
31-01-2009, 20:49
jos_session masz zoptymalizować. Masz taką funkcje, zaznac tą tabele zdjedź na dół i masz tam okinenko do wyboru/.

strategist
31-01-2009, 20:56
optymailizuje ale po chwili znow mam nadmiar

strategist
31-01-2009, 21:08
moze jakos strone trzeba zooptymalizowac

zwiastun
31-01-2009, 23:47
Przeznaczyć więcej miejsca na bazę danych! z dostępnego

strategist
01-02-2009, 16:21
powiekszyłem z 10 do 210 mb i nic. nadal to samo, a czy nie uwazacie ze taka prosta strona jak moja ebrzuszek.pl za długo sie ładuje? czy scrypty gemiusa i stat moga spowalniać, bo po za trescia kilkoma modułami nie wiele tam jest i troche grafiki

jaromiko
02-02-2009, 23:24
Ja miałem problem banalny z modułem do pagerank strony, sam nie wiem po co go wstawiałem ;) no ale tak niekiedy jest :) no ale co do ebrzuszka to reklamy robia swoje a i serwer widać nie najlpszy ;)

jaromiko
02-02-2009, 23:34
A co do ebrzuszka włącz sobie tę strone w IE i zobacz na dole na pasku się wyświetla, że po mimo wczytania strony strona dalej ciągnie jakies zasoby z googleads.g.doubleclick.net/itd...... tam na dole gdzie pisze ile jeszcze elementow musi zostac wgrane ;) i wtedy bedziesz wiedzial co robi ten haos na stronie a moze mi sie wydaje ;)

strategist
04-02-2009, 16:11
to o czym piszesz to chyba reklamy google

znajomy i polecił dodanie indexow do bazy wg ponizszego schemau
http://www.ircmaxell.com/articles/joomla/improving-joomlas-queries.html
dodatkowo skopiowalem serwis i podizleilem go na kilka z kilkoma bazami danych na razie pomoglo

zwiastun
04-02-2009, 18:28
Dobre info! Brawo!

jaromiko
04-02-2009, 19:36
A tak pomyliłem wątki z odpowiedzią ale co do twojejgo ifo to tak jak napisał zwiastun bardzo dobry pomysł ;) troche **************************************** się ale w sumie nic sie nie nacuduje ;))

strategist
04-02-2009, 22:51
dzięki... po Waszej pomocy musiałem napisać rozwiazanie może tez tym troche innym pomogę....