<div dir="ltr"><div class="gmail_default" style="font-size:small">Ahoj,</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">tohle vypadá, Ĺľe PHP se z nÄ›jakĂ©ho dĹŻvodu nestihne provĂ©st za 5 sekund a FPM ho zabije.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Ĺ el bych po zatĂ­ĹľenĂ­ procesoru (CPU usage), vytĂ­ĹľenĂ­ disku (I/O load), nikoliv UNIX load) a zjistil, kde to drhne. </div><div class="gmail_default" style="font-size:small">Jestli drhne databáze, disky, PHP, ÄŤi nÄ›co jinĂ©ho. A aĹľ budeš mĂ­t odhad, kde to drhne, tak tam se zaměříš.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">--VÄ›roš </div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-12-02 9:56 GMT+01:00 Branislav Viest <span dir="ltr"><<a href="mailto:info@branoviest.com" target="_blank">info@branoviest.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-family:arial,helvetica,sans-serif;font-size:12pt;color:#000000"><div>tohle je vytezek z php-fpm logu<br></div><div><br></div><div>[02-Dec-2015 09:54:39.867720] WARNING: pid 5043, fpm_request_check_timed_out(), line 269: [pool web1] child 24945, script 'xxxwww//index.php' (request: "GET /index.php") executing too slow (5.799737 sec), logging # to je jasny<br>[02-Dec-2015 09:54:39.867981] DEBUG: pid 5043, fpm_got_signal(), line 76: received SIGCHLD<br>[02-Dec-2015 09:54:39.868499] NOTICE: pid 5043, fpm_children_bury(), line 227: child 24945 stopped for tracing<br>[02-Dec-2015 09:54:39.868508] NOTICE: pid 5043, fpm_php_trace(), line 144: about to trace 24945<br>[02-Dec-2015 09:54:39.868731] NOTICE: pid 5043, fpm_php_trace(), line 172: finished trace of 24945<br>[02-Dec-2015 09:54:39.869145] NOTICE: pid 5043, fpm_children_bury(), line 227: child 28359 stopped for tracing<br>[02-Dec-2015 09:54:39.869161] NOTICE: pid 5043, fpm_php_trace(), line 144: about to trace 28359<br>[02-Dec-2015 09:54:39.869415] NOTICE: pid 5043, fpm_php_trace(), line 172: finished trace of 28359<br>[02-Dec-2015 09:54:39.869893] NOTICE: pid 5043, fpm_children_bury(), line 227: child 33445 stopped for tracing<br>[02-Dec-2015 09:54:39.869904] NOTICE: pid 5043, fpm_php_trace(), line 144: about to trace 33445<br>[02-Dec-2015 09:54:39.870101] NOTICE: pid 5043, fpm_php_trace(), line 172: finished trace of 33445<br>[02-Dec-2015 09:54:39.870602] NOTICE: pid 5043, fpm_children_bury(), line 227: child 36581 stopped for tracing<br>[02-Dec-2015 09:54:39.870615] NOTICE: pid 5043, fpm_php_trace(), line 144: about to trace 36581<br>[02-Dec-2015 09:54:39.870884] NOTICE: pid 5043, fpm_php_trace(), line 172: finished trace of 36581<br>[02-Dec-2015 09:54:39.871187] NOTICE: pid 5043, fpm_children_bury(), line 227: child 37001 stopped for tracing<br>[02-Dec-2015 09:54:39.871195] NOTICE: pid 5043, fpm_php_trace(), line 144: about to trace 37001<br>[02-Dec-2015 09:54:39.871460] NOTICE: pid 5043, fpm_php_trace(), line 172: finished trace of 37001<br>[02-Dec-2015 09:54:39.872162] DEBUG: pid 5043, fpm_got_signal(), line 76: received SIGCHLD<br>[02-Dec-2015 09:54:39.872582] DEBUG: pid 5043, fpm_got_signal(), line 76: received SIGCHLD<br>[02-Dec-2015 09:54:39.872950] DEBUG: pid 5043, fpm_got_signal(), line 76: received SIGCHLD<br>[02-Dec-2015 09:54:39.873295] DEBUG: pid 5043, fpm_got_signal(), line 76: received SIGCHLD<br>[02-Dec-2015 09:54:39.873616] DEBUG: pid 5043, fpm_event_loop(), line 424: event module triggered 1 events<br></div><div><br></div><div>S pozdravem<br>Branislav Viest<br><br></div><br><hr><div><b>Od: </b>"VÄ›roslav Kaplan" <<a href="mailto:veros.kaplan@gmail.com" target="_blank">veros.kaplan@gmail.com</a>><br><b>Komu: </b>"vpsFree.cz Community list" <<a href="mailto:community-list@lists.vpsfree.cz" target="_blank">community-list@lists.vpsfree.cz</a>><br><b>OdoslanĂ©: </b>streda, 2. december 2015 9:48:22<br><b>Predmet: </b>{Disarmed} [vpsFree.cz: community-list] {Disarmed} Re: php pro nginx high load<br></div><br><div><div dir="ltr"><div class="gmail_default" style="font-size:small">Ahoj,</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Tohle vypadá, Ĺľe PHP-FPM z nÄ›jakĂ©ho dĹŻvodu zavĹ™e to fcgi spojenĂ­. Dokážeš vytáhnout nÄ›jakĂ© podezĹ™elĂ© logy z toho PHP-FPM a zkusit uhodnout, proÄŤ to dÄ›lá ?</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">--VÄ›roš Kaplan</div><div class="gmail_default" style="font-size:small"><a href="http://veroskaplan.cz/" target="_blank">http://veroskaplan.cz/</a></div><div class="gmail_default" style="font-size:small">Ĺ kolĂ­me Ansible: <a href="http://ansible.cz/" target="_blank">http://ansible.cz/</a></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-12-02 8:25 GMT+01:00 Branislav Viest <span dir="ltr"><<a href="mailto:info@branoviest.com" target="_blank">info@branoviest.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-family:arial,helvetica,sans-serif;font-size:12pt;color:#000000"><div>Ahoj,</div><br><div>mám tady jeden server kde je cca 35k lidĂ­ za vteĹ™inu. Běží tu nginx + php fpm a mysql db. V nginxu jsem rozjel microcache, coĹľ hodnÄ› ulevilo zátěži serveru. NicmĂ©nÄ›, mám problĂ©m s PHPkem. FPM běží pĹ™es TCP (zkoušel jsem i unix socket nicmĂ©nÄ› bylo to pomalÄ›jší a docházelo ke stejnĂ©mu problĂ©mu). Dle error logu docházĂ­ k tÄ›mto chybám:</div><br><div>2015/12/01 23:26:56 [error] 27043#0: *122476 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 188.114.98.51, server: xxx request: "GET /xxx/xxxx/xxx HTTP/1.1", upstream: "fastcgi://<a href="http://127.0.0.1:9000" target="_blank"><span color="red" style="color:red"><b>MailScanner has detected a possible fraud attempt from "127.0.0.1:9000" claiming to be</b></span> <span color="red" style="color:red"><b>MailScanner warning: numerical links are often malicious:</b></span> 127.0.0.1:9000</a>", host: "xxxx", referrer: "<a href="http://xxxxx" target="_blank"><span color="red" style="color:red"><b>MailScanner has detected a possible fraud attempt from "xxxxx" claiming to be</b></span> http://xxxxx</a>"<br>2015/12/01 23:26:56 [error] 27032#0: *124368 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 188.114.99.50, server: xxxxxx, request: "GET /xxxxx/xxxxx HTTP/1.1", upstream: "fastcgi://<a href="http://127.0.0.1:9000" target="_blank"><span color="red" style="color:red"><b>MailScanner has detected a possible fraud attempt from "127.0.0.1:9000" claiming to be</b></span> <span color="red" style="color:red"><b>MailScanner warning: numerical links are often malicious:</b></span> 127.0.0.1:9000</a>", host: "xxxxx", referrer: "xxxxx"</div><br><div>a sype to tam docela drsnÄ›. Jak vypnu kešovánĂ­ v nginxu load vyskoÄŤĂ­, tĹ™eba i na 500, tÄ›ch chyb PHPka je mĂ©nÄ› ale jsou tam pořád. </div><br><div>Konfigurace FPM pro pool toho webu je:</div><br><div>[web1]<br><br>listen = <a href="http://127.0.0.1:9000" target="_blank"><span color="red" style="color:red"><b>MailScanner has detected a possible fraud attempt from "127.0.0.1:9000" claiming to be</b></span> <span color="red" style="color:red"><b>MailScanner warning: numerical links are often malicious:</b></span> 127.0.0.1:9000</a><br>listen.allowed_clients = 127.0.0.1<br>listen.owner = web1<br>listen.group = client0<br>listen.mode = 0660<br>listen.backlog = 65536<br><br>user = web1<br>group = client0<br><br>request_slowlog_timeout = 5s<br>slowlog = /var/log/php-fpm/slowlog-web1.log<br><br>pm = dynamic<br>pm.max_children = 7000<br>pm.start_servers = 4000<br>pm.min_spare_servers = 2000<br>pm.max_spare_servers = 4000<br>pm.max_requests = 100<br><br>request_terminate_timeout = 60s<br>rlimit_files = 500000<br>rlimit_core = unlimited<br>catch_workers_output = yes<br><br>pm.status_path = /php-status<br><br>chdir = /<br></div><br><div>+ openbasedir, sessions save path. atp.</div><br><div>S tÄ›ma hodnotama jsem se zkoušel rĹŻznÄ› hrát, nicmĂ©nÄ› to k vyĹ™ešenĂ­ tohoto problĂ©mu nepomohlo. Zkoušel jsem upravit i nÄ›jakĂ© parametry jádra (local port range, tcp ack timeouty atp.) ale vĂ˝sledek stejnĂ˝. DÄ›lá to i u unix socketu, coĹľ je mi právÄ› zvláštnĂ­. Nginx konfigurace je:</div><div>user www-data;<br>worker_processes 80;<br>pid /run/nginx.pid;<br># set open fd limit to 50000<br>worker_rlimit_nofile 100000;<br><br>events {<br> worker_connections 1024;<br> multi_accept on;<br> use epoll;<br>}<br></div><br><div>ve vhostu nic zvlastniho, jenom pro php:</div><br><div> fastcgi_split_path_info ^(.+\.php)(/.+)$;<br> fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;<br> include /etc/nginx/fastcgi_params;<br> fastcgi_pass <a href="http://127.0.0.1:9000" target="_blank"><span color="red" style="color:red"><b>MailScanner has detected a possible fraud attempt from "127.0.0.1:9000" claiming to be</b></span> <span color="red" style="color:red"><b>MailScanner warning: numerical links are often malicious:</b></span> 127.0.0.1:9000</a>;<br> fastcgi_index index.php;<br> fastcgi_intercept_errors on;<br> fastcgi_read_timeout 4m;<br></div><br><div>Dnes bude k tomuto server novĂ˝, pro rozdÄ›lenĂ­ zátěže, ale jako fakt nevĂ­m jestli to má smysl ve stejnĂ© konfiguraci, kvĹŻli tÄ›m php chybám. Nenapadá Vás kluci, co s tĂ­m? Nebo případnÄ› návrh Ĺ™ešenĂ­, kterĂ˝m bych nahradil tohle, pĹ™i dvou serverech ? PĹ™emýšlĂ­m nad MySQL M - M replikacĂ­, v DNS round robin a GlusterFS pro data. Ale to phpko mi nedá spát. A dnes veÄŤer to uĹľ další nápor asi nedá.</div><br><div>DĂ­ky za rady a konzultace.</div><br><div>S pozdravem<span><span color="#888888" style="color:#888888"><br>Branislav Viest<br></span></span></div></div></div><br>_______________________________________________<br>
Community-list mailing list<br>
<a href="mailto:Community-list@lists.vpsfree.cz" target="_blank">Community-list@lists.vpsfree.cz</a><br>
<a href="http://lists.vpsfree.cz/listinfo/community-list" rel="noreferrer" target="_blank">http://lists.vpsfree.cz/listinfo/community-list</a><br>
<br></blockquote></div><span class="HOEnZb"><font color="#888888"><br><br clear="all"><br>-- <br><div><div dir="ltr">--V.Kaplan</div></div>
</font></span></div><span class="HOEnZb"><font color="#888888">
<br>_______________________________________________<br>Community-list mailing list<br><a href="mailto:Community-list@lists.vpsfree.cz" target="_blank">Community-list@lists.vpsfree.cz</a><br><a href="http://lists.vpsfree.cz/listinfo/community-list" target="_blank">http://lists.vpsfree.cz/listinfo/community-list</a><br></font></span></div></div></div><br>_______________________________________________<br>
Community-list mailing list<br>
<a href="mailto:Community-list@lists.vpsfree.cz">Community-list@lists.vpsfree.cz</a><br>
<a href="http://lists.vpsfree.cz/listinfo/community-list" rel="noreferrer" target="_blank">http://lists.vpsfree.cz/listinfo/community-list</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">--V.Kaplan<br></div></div>
</div>