Skocz do zawartości
Balon

Opymalizacja Serwera - Apache - Powolne Działane

Polecane posty

W jaki sposób zoptymalizować porządnie serwer. Posiadam VPS z 256 ramu do końca tego miesiąca. Stoi na tym w miarę duży serwis oparty o Symfony. Online siedzi średnio 200-250 online. Serwer pada praktycznie. Trzeba czekać bardzo długo aż strona się załaduje. Ale co najdziwniejsze Symfony pokazuje, że wykonuje się ok 400ms... A strona ładuje się dużo dłużej.

 

Czytam trochę tutaj http://www.howtoforge.com/configuring_apac...mum_performance , ale nie chcę czegoś popsuć ani pogorszyć obecnego stanu...

 

Czy ktoś ma jakiś pomysł?

 

Pozdrawiam,

Krzysiek !

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A jesteś pewien, że to Apache jest wąskim gardłem? Właśnie to musisz zdefiniować na początek. To VPS, problemem może być za wolne I/O, może strona jest napisana po prostu kiepsko albo baza danych nie wyrabia?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Hm Symfony jest profesjonalną aplikacją. Symfony-project.com - framework. Stoją na tym chociażby zakładki google, więc to raczej nie w tym problem.

 

VPS ma 256 ramu. Wczesniej mial 128, a po zwiększeniu nie zauważyliśmy wzrostu wydajności.

 

W jaki sposób wyszukać takie wąskie gardło ?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

256MB ram'u?

Nie uważasz, że to jednak zdecydowanie za mało?

"serwer pada"... ok, ale wiesz ile może być powodów? dużo

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
W jaki sposób wyszukać takie wąskie gardło ?

Oj, to można by książkę napisać... W Twoim przypadku sprawdziłbym przede wszystkim czas reakcji na otwarcie małej, prostej, statycznej strony. Małej bo może problemem jest łącze, statycznej bo chcemy sprawdzić czy to Apache jest winny czy może PHP, prostej żebyś się nie napisał (wrzuć tam tylko słowo "test" na przykład). Ile czasu trwa oczekiwanie na otwarcie takiej strony?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

No tak, planujemy zmienić serwer pod koniec miesiąca, ale teraz muszę coś zrobić z tym... Nie chcę żeby się ludzie zniechęcili...

 

Ps. na tym serwerze stoją dwie strony. Druga to forum na którym nikt praktycznie nie siedzi. I działa ona szybko.... A już ta druga wogólee praktycznie

 

EDIT: Pleple, na tym samym vps są dwa subkonta. Jeden na dużą stronę. Drugi na mała - forum. Forum śmiga świetnie, a wszystko co jest na koncie dużej strony nie działa praktycznie..

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

@pleple... łącznie za słabe?

Przecież widać od razu, ze sprzęt, począwszy od ramu jest za mało na forum przy 200-250 online.

tylko mocny dedyk.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

@Adrian: Tak ale ja piszę o znalezieniu wąskiego gardła jeśli ono jest. Łącze jest przycinane na niektórych VPSach do niskiej wartości. Jeśli sporo osób będzie pobierać dane na raz na łączu 2Mbit to jasne, że będzie wolno to działać.

 

@Balon: No więc zastanów się czym te dwie podstrony się różnią, może na jednej jest właśnie PHP z dużym frameworkiem a na drugiej nie? Tak czy siak, jeśli są obsługiwane przez tą samą instancję apache, to nie może być stricte jego wina.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

@pleple ale koncie tej dużej strony jest też blog który też wolno działa. A forum na innym koncie śmiga.

 

Poza tym dziwi mnie że framework wywala że generuje się zaledwie 400ms, a strona ładuje się z minutę...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
@Adrian: Tak ale ja piszę o znalezieniu wąskiego gardła jeśli ono jest. Łącze jest przycinane na niektórych VPSach do niskiej wartości. Jeśli sporo osób będzie pobierać dane na raz na łączu 2Mbit to jasne, że będzie wolno to działać.
No bez przesady, że łącze ma być obcinane aż do tak niskiej wartości, przecież o tylko forum a nie serwer download...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
No bez przesady, że łącze ma być obcinane aż do tak niskiej wartości, przecież o tylko forum a nie serwer download...

Forum jest małe na zaledwie 5-10 osób online.

Strona jest na 200-300 dzisiaj. Nie ma tam niczego do pobierania. Żadnej treści statycznej praktycznie.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
@pleple ale koncie tej dużej strony jest też blog który też wolno działa. A forum na innym koncie śmiga.

Więc już wiesz jaka jest różnica - mają osobne konta. Tylko co to u Cibie znaczy, mają osobnego virtualhosta? Mają osobne UID/GID. Co jeszcze jest ustawiane per-user?

 

Poza tym dziwi mnie że framework wywala że generuje się zaledwie 400ms, a strona ładuje się z minutę...

Wynika z tego, że albo framework kłamie (mało prawdopodobne) albo faktycznie w czasie ładowania, sama generacja jest tylko ułamkiem czasu. Może najwięcej czasu zajmuje na przykład czekanie na jakiś wolny proces apache a może przesłanie strony do klienta? Odpowiedź ta Ci odpowiedzenie na moje pierwsze pytanie w tym poście

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Symfony może i jest dobre ale we wszystkich testach jakie swego czasu oglądałem wypadało najgorzej pod względem wydajnościowym. Takie pierwsze z brzegu porównanie: http://wiki.rubyonrails.org/rails/pages/Fr...k%20Performance

z APC i bez. Pewnie musiałbyś co nieco przepisać ale to przynajmniej inwestycja na przyszłość. Jak nic nie pomaga próbuj może przenieść na lighttpd+fastcgi.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Jak nic nie pomaga próbuj może przenieść na lighttpd+fastcgi.

To już zdecydowanie łatwiej będzie przenieść na Apache Worker MPM + fastcgi a efekt prawie taki sam jeśli chodzi o wydajność.

 

BTW. Jeśli cokolwiek jest wolniejsze niż RoR to znaczy, że jest na prawdę baaardzo wolne.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Hmmmm, wystarczylo zmienic KeepAlive na off i od razu serwer ruszyl. Nawet biedny VPS z 256 ramu nie ma problemow z obsluzeniem 300 online na aplikacji opartej o symfony.

 

To KeepAlive po prostu maksymalnie zasyfialo pamiec RAM. teraz jest juz ok, a pod koniec miesiaca przerzucam sie na 1 gb ramu w HostEurope z FastCgi + Lighttpd, czyli tam to juz nie bedzie wiekszego problemu nawet przy tysiacu :D

 

pozdrawiam,

dzieki za zainteresowanie!

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Hmmmm, wystarczylo zmienic KeepAlive na off i od razu serwer ruszyl.

No bo keepalive powinno mieć małą wartość, a nie 15 czy tam nawet 30 sekund;

wybaczcie nie pamiętam jak to jest per default, zawsze to zmieniam z automatu.

System się strasznie męczy musząc pilnować "wiszących" połaczeń TCP/IP.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość normanos
Hm Symfony jest profesjonalną aplikacją. Symfony-project.com - framework. Stoją na tym chociażby zakładki google, więc to raczej nie w tym problem.

jak już to yahoo. no i yahoo nie raz przedstawialo swoją filozofię "optymalizacja? a po co? dostawimy nowe serwery" więc to akurat nie jest dobry przykład.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Wiesz, te gadki o wydajnosci symfony, na prawde nie jest zauwazalne powolne dzialanie.

 

Przy 300 osobach nie ma problemu z zdialaniem. Czasy sa na pozimie 700 ms. Wiem, ze to nie jest zbyt dobry wynik, ale nie odczuwa sie tego kompletnie. A symfony przyspiesza maksymalnie prace. Zamiast 2 tygodni zrobilem podstawowy projekt w 4-5 dni.

 

Dlatego jest wybierane symfony. Mowi sie, ze taniej dostawic serwer niz placic programistom. Poza tym symfony bez problemu jest wstanie obsluzyc wieksza ilosc osob.'

 

Wierze , ze w miare czasu , symfony zostanie jeszcze bardziej zoptymalizowane. I wydaje mi sie ze nie bedzie to zbyt duzem problemem dla Fabiena, bo facet zna sie na tym bardzo dobrze.

 

Pozdrawiam,

Krzysiek

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×