Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [nginx][php5-fpm][Symfony2] Zapełnianie dostępnej puli wątków przy niewielkim ruchu
Vail
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 8.04.2014

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


Witam,

borykamy się aktualnie z problemem wątków w php5, nasza architektura to nginx i php5-fpm a aplikacja stoi na symfony 2.3. Problem wygląda tak że podczas testowania za pomocą jMetera przy 50 użytkownikach php tworzy maksymalną ilość wątków i aplikacja klęka. Starsza wersja apki napisana w pure php wytrzymuje 4tys. uu na raz. Moglibyście wskazać gdzie możemy szukać problemu?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
pyro
post
Post #2





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


lol (IMG:style_emoticons/default/oneeyedsmiley02.png) może w kodzie aplikacji?
Go to the top of the page
+Quote Post
Vail
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 8.04.2014

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


łał, dzięki za tak wnikliwą anailzę, nie wpadlibyśmy na to.

Wyeliminowaliśmy wszystkie błędy które powodowały wywalanie się skryptu przedwcześnie, logi php są czyste więc to nie jest problem tego że proces kończy się przedwcześnie i nie zwalnia zasobów.
Czy ktoś z was ma może doświadczenie z konfiguracją phpa w takiej architekturze? Jaki macie limit wątków?

Ten post edytował Vail 8.04.2014, 14:15:58
Go to the top of the page
+Quote Post
sowiq
post
Post #4





Grupa: Zarejestrowani
Postów: 1 890
Pomógł: 339
Dołączył: 14.12.2006
Skąd: Warszawa

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


Ja bym chyba zaczął od sprawdzenia aplikacji pod kątem wąskich gardeł. Polecam Xhprof.
Go to the top of the page
+Quote Post
ohm
post
Post #5





Grupa: Zarejestrowani
Postów: 623
Pomógł: 144
Dołączył: 22.12.2010

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


Może problem cache'owania? Tzn może zbyt rzadko używane?
Go to the top of the page
+Quote Post
Vail
post
Post #6





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 8.04.2014

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


Cytat(sowiq @ 8.04.2014, 15:27:10 ) *
Ja bym chyba zaczął od sprawdzenia aplikacji pod kątem wąskich gardeł. Polecam Xhprof.


Czy mógłbyś doradzić coś na początek? Używasz xhprof z symfony? Ciężko mi jest aktualnie nawet stwierdzić w jakich jednostkach podawane są wszystkie wartości (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
ano
post
Post #7





Grupa: Zarejestrowani
Postów: 435
Pomógł: 40
Dołączył: 16.02.2003
Skąd: Wrocław

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


Ok ale nie podałeś najważniejszych danych:
1. Ile req/s robicie przy tych 50 concurrent users? (Bo domyślam się, że takie znaczenie ma u Ciebie "użytkownik")
2. Jakie response time'y macie przy tylu użytkownikach?
3. Jaki response time macie przy jednym wątku (1 conc. user)?
4. Na ile macie ustawione max procesów php?

Co do optymalizacji s2/doctrine:
- W scenariuszu testowym używacie doctrine? - http://labs.octivi.com/mastering-symfony2-...mance-doctrine/
- Zoptymalizowaliście Symfony2? APC włączone? - http://labs.octivi.com/mastering-symfony2-...ance-internals/
Go to the top of the page
+Quote Post
Vail
post
Post #8





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 8.04.2014

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


Cytat(ano @ 9.04.2014, 21:00:00 ) *
Ok ale nie podałeś najważniejszych danych:
1. Ile req/s robicie przy tych 50 concurrent users? (Bo domyślam się, że takie znaczenie ma u Ciebie "użytkownik")
2. Jakie response time'y macie przy tylu użytkownikach?
3. Jaki response time macie przy jednym wątku (1 conc. user)?
4. Na ile macie ustawione max procesów php?

Co do optymalizacji s2/doctrine:
- W scenariuszu testowym używacie doctrine? - http://labs.octivi.com/mastering-symfony2-...mance-doctrine/
- Zoptymalizowaliście Symfony2? APC włączone? - http://labs.octivi.com/mastering-symfony2-...ance-internals/



Co do optymalizacji symfony2 to oczywiście mamy wpięte APC, korzystamy z cachea dla doctrinea (też w APC), sesje wyciągneliśmy do memcacheda, mamy vanisha. Z tego względu wydaje nam się że pod względem architektury to ciężko coś poprawić.

Resztę muszę sprawdzić ale limit procesów jest ustawiony na 64
Go to the top of the page
+Quote Post
ano
post
Post #9





Grupa: Zarejestrowani
Postów: 435
Pomógł: 40
Dołączył: 16.02.2003
Skąd: Wrocław

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


Macie varnisha - no ok, ale jaki hit ratio przy takim scenariuszu testowym? 0%?... (IMG:style_emoticons/default/wink.gif)
Jeśli jmeter uderzalby zawsze w zcacheowane zasoby w varnishu to 10.000 req/s to minimum (IMG:style_emoticons/default/wink.gif)

Na oko - jakie średnie czasy odpowiedzi? 2 sec?
Btw. Mozesz zrobić printscreena toolbara profilera S2 ze strony która się najdłużej Wam ładuje.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.12.2025 - 23:10