Fórum Root.cz
Hlavní témata => Server => Téma založeno: MedvedCZ 12. 10. 2013, 10:39:58
-
Zdravim,
mam server na kterem je navstevnost cca 8-10K lidi za den. Muj problem je v tom ze apache nekdy jak kdyby zamrzne a nechce me pustit na web (i 6× za den). Kdyz restartuju Apache tak se na web okamzite dostanu.
Moje distro je Ubuntu 12.10
PHP 5.4.6-1ubuntu1.4 (cli)
Apache/2.2.22
Postup instalace byl apt-get install apache2 a pak php5. Zadne jine nastavovani jsem nedelal. Muze mi prosim nekdo poradit proc se tak deje?
Dekuji
-
Sleduj zatížení v době kdy to mrzne, server se patrně vyswapuje
-
Nn, mam 16gb ram a swap nastaveny na 0mb. Server jindy jede na plny vykon jindy na polovicny. Ted frci na tretinovy vykon a nekdy proste konec. Dneska uz dvakrat. Ono se to casem odsekne cca 5-10 minut
-
Myslim ze to dela spatna kompabilita Apache a PHP. Premyslel jsem nad timto http://www.binarytides.com/install-apache-php-mod-fastcgi-ubuntu/
Na jendnom serveru mam mod_fastcgi a tam to krasne jede bez problemu uz nekolik let.
Popripade prejit na Nginx.
-
Moje distro je Ubuntu 12.10
PHP 5.4.6-1ubuntu1.4 (cli)
Apache/2.2.22
Skúšal si updates? Aktuálne sú úplne iné verzie. Na FreeBSD je už php vo verzii 5.4.20 a Apache vo verzii 2.2.25. Hlavne php je podľa mňa značne staré, vtedy bola verza 5.4 ešte v plienkach.
Podpora Ubuntu-servera 12.10 o chvíľu končí, LTS by bola asi lepšia voľba.
-
Presel jsem na ubuntu 13.04 ale jsou tam ty stejne verze apache2 i php5 ke stazeni. Budu zkoumat zda tomu upgrade na jinou verzi ubuntu pomohla
-
Šel bych cestou nginx+fastctgi než se s tímhle trápit...
-
Nginx jsem zkousel a byl jsem celkem spokojeny. Jen se chci zeptat zda nginx muze spolupracovat s cestou var/www (minule jsem to zkousel a byl problem)
Dekuji :)
-
Mohl by to způsobovat Slowloris nebo něco jiného, co visí a blokuje konexe. Řešení je mod_antiloris a podobné, nebo lépe rovnou Apache 2.4, kde to řeší už samotný Apache. Pro 2.4 se musí trochu upravit config, ale kvalita je oproti 2.2 nebo ngnixu o hodně výše.
-
Nginx jsem zkousel a byl jsem celkem spokojeny. Jen se chci zeptat zda nginx muze spolupracovat s cestou var/www (minule jsem to zkousel a byl problem)
Nevím jestli úplně rozumím otázce. Nginxu se samozřejmě dá říct, odkud má soubory brát, např.:
[root@server.cz ~] vim /usr/local/etc/nginx/sites-enabled/skola.conf
server {
listen 80 default_server;
server_name www.mojedomena.cz;
location ~ ^/img/ {
root /usr/local/www/obraaasky;
}
location ~ ^ {
root /usr/local/www/ostatni;
}
}
-
Problém bude asi v tom, že Apache je v defaultu nakonfigurovaný na obyčejné weby atp.
Při vyšší zátěži se stává, že nestíhá zpracovávat požadavky a ty se skládají do fronty do nekonečna. 10K návštěv denně je pro default konfiguraci celkem dost.
Řešení neexistuje pokud to bude furt jeden stroj a jeden Apache a je jedno kolik má procesorů nebo ramky.
Nicméně pomůže trochu FastCGI s interpreterem na PHP - každý request tak bude mít vlastní proces, dá se říct a s tím že už dá víc hrát co se týče konfigurace FastCGI v Apache.
Každopádně na větší projekty bych to asi už balancoval přes haproxy a máš klid - http://www.howtoforge.com/setting-up-a-high-availability-load-balancer-with-haproxy-heartbeat-on-debian-lenny (http://www.howtoforge.com/setting-up-a-high-availability-load-balancer-with-haproxy-heartbeat-on-debian-lenny) (jde to i na novějších debianech, popř. ubuntu).