Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Apache _ Dedyk z Apache II

Napisany przez: Kochan 26.05.2017, 10:01:15

Witam! Prośba o wskazówki - programiści zrzucają winę na serwer gdzie według mnie maszyna jest zajeżdżana przez skrypt (głównie zapytania do mysql'a)

serwerownia kylos.pl (Łódź), parametry
Procesor AMD FX8320E 8x3.2Ghz
Ram: 32GB
Operating System: Debian GNU/Linux 8 (jessie)
Kernel: Linux 3.16.0-4-amd64

Aplikacja oparta o framework yii, korzysta i generuje sporo zapytań do mysql'a
PHP-FPM
DirectAdmin 1.51.3
Exim 4.89
MariaDB 10.0.29
Named 9.9.5
dovecot 2.2.29.1
pure-ftpd 1.0.43
Php 5.6.30


MPM ustawiony na EVENT
Server version: Apache/2.4.25 (Unix)
Server built: Apr 14 2017 14:20:40
Server's Module Magic Number: 20120211:67
Server loaded: APR 1.5.2, APR-UTIL 1.5.4
Compiled using: APR 1.5.2, APR-UTIL 1.5.4
Architecture: 64-bit
Server MPM: event
threaded: yes (fixed thread count)
forked: yes (variable process count)


Konfiguracja httpd - https://pastebin.com/jEFPGKN3

Zawartość /httpd-mpm.conf - https://pastebin.com/A9BS9KWV

Polecenie TOP

Cytat
Tasks: 224 total, 2 running, 221 sleeping, 1 stopped, 0 zombie
%Cpu(s): 5.2 us, 0.2 sy, 0.0 ni, 93.7 id, 0.8 wa, 0.0 hi, 0.1 si, 0.0 st
KiB Mem: 32480792 total, 21286544 used, 11194248 free, 249260 buffers
KiB Swap: 6637560 total, 0 used, 6637560 free. 18397804 cached Mem

Cytat
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
794 mysql 20 0 915232 241076 14900 S 52.1 0.7 10458:45 mysqld
26558 szukamp+ 20 0 183444 59140 10892 S 31.9 0.2 0:13.69 php-fpm56
26569 szukamp+ 20 0 171928 47072 10892 S 16.9 0.1 0:12.51 php-fpm56
22622 szukamp+ 20 0 155596 31056 11940 S 3.7 0.1 3:25.86 php-fpm56
25119 szukamp+ 20 0 153260 29736 10892 S 3.7 0.1 1:37.74 php-fpm56
26557 szukamp+ 20 0 152972 29448 10892 S 3.7 0.1 0:13.57 php-fpm56
26575 szukamp+ 20 0 151024 27252 10896 S 3.3 0.1 0:12.71 php-fpm56
16912 apache 20 0 4755460 39924 8768 S 1.0 0.1 0:39.19 httpd
16914 apache 20 0 4754956 26676 8760 S 1.0 0.1 0:23.14 httpd
7 root 20 0 0 0 0 S 0.3 0.0 391:57.95 rcu_sched
152 root 0 -20 0 0 0 S 0.3 0.0 7:41.66 kworker/2:1H
631 message+ 20 0 42124 3416 3028 S 0.3 0.0 2:37.94 dbus-daemon
8276 root 20 0 161048 76168 6136 S 0.3 0.2 0:11.56 /usr/bin/spamd
16917 apache 20 0 4754956 32956 8772 S 0.3 0.1 0:22.36 httpd
16922 apache 20 0 4755440 36472 8912 S 0.3 0.1 0:54.23 httpd
26768 root 20 0 23656 3100 2528 R 0.3 0.0 0:00.08 top


Widać obciążenie CPU przez mysql'a na poziomie 52%

Zużycie RAMU


Napisany przez: nospor 26.05.2017, 10:12:19

1) Wlacz w mysql logowanie slow queries
2) A aplikacja (framework), ktorej uzywacie, nie jest w stanie wyswielic zapytan jakie sa generowane do wyswietlenia strony? Bedzie wszystko jasne.

Napisany przez: ohm 26.05.2017, 10:22:16

237mb dla mysqla, a na serwerze 32gb...
Jeśli to jest tylko jedna aplikacja, to mysql powinien na spokojnie dostać 3/4 tego ramu. Jak sam piszesz " korzysta i generuje sporo zapytań do mysql'a", więc zacząłbym od tego, tutaj zmiany ustawień http naprawdę niewiele pomogą

Napisany przez: Kochan 26.05.2017, 10:36:38

no i sprawa rozwiązana przez programistów, włączenie cachu, optymalizacja zapytań i czas z 7-8 spada do 1s

Napisany przez: nospor 26.05.2017, 10:39:21

1s to nadal duzo. Jakiego typu to stronka?

Napisany przez: Kochan 26.05.2017, 10:43:52

Wyszukiwarka ofert pracy.
Czas odpowiedzi serwera teraz wynosi 0,67

Napisany przez: nospor 26.05.2017, 10:46:21

Nom to tez 1s na wyszukanie wydaje sie dlugo. CHyba ze mowisz 1s na wygenerowanie strony.
Z drugiej strony spadek z 8 na 1 i tak sukces smile.gif

Napisany przez: Kochan 26.05.2017, 10:50:42

tak 1s na wygenerowanie całej strony.

Napisany przez: nospor 26.05.2017, 10:54:32

Cytat
Czas odpowiedzi serwera teraz wynosi 0,67
No to juz lepiej.
Dobrze, ze chlopaki w koncu poszli po rozum do glowy i przyznali, ze jednak troche dali ciala po czym poprawili smile.gif

Napisany przez: Kochan 26.05.2017, 10:58:34

Racja, ale nie mieli już wyjścia bo po zmianie ze współdzielonego na dedyka sytuacja była ta sama mimo sugestii zmian.
Dzięki za pomoc. smile.gif

Napisany przez: nospor 26.05.2017, 11:00:33

Na przyszlosc powiedz chlopakom, by wyswietlili zapytania jakie generuja oraz czasy tych zapytan. Na pewno sa w stanie takie cos zrobic. Nawet przy kiepskim serwerze, jak zapytania generuja sie 8s to z calym szacunkiem, ale to wina zapytan a nie serwera.

Napisany przez: Pyton_000 27.05.2017, 07:12:28

Jeśli mysql nie jest zoptymalizowane choć trochę to też będzie muliło bo np. brakuje pamięci na sorty, cache małe itd.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)