Autor Zpráva
adam_vent
Profil
Ahoj,
mám dotaz. Co je vhodnější na provoz webového serveru kde poběží weby např. na Drupalu? Nginx je bezesporu svižnější a výkonější ale, nevím jestli je na toto lepší nasadit NGINX nebo Apache?

Děkuji
Keeehi
Profil
Bude to jedno. Problémy s rychlostí řeš až nastanou. Mimo to, doba kterou přidává webserver je tak minimálně o řád nižší, než co si vezme drupal. Ale klidně to může být i několik řádů. Záležet bude hlavně tedy jaká všechna rozšíření do toho nasekáš a jak budou dobře napsaná. Raději svou energii zaměř na to.
smitka
Profil
Já bych naopak problémy řešil preventivně. Nginx zvládá obsloužit mnohem více požadavků než Apache a rychleji servíruje statické soubory. Pokud na serveru běží jeden málo navštěvovaný web, tak je to jedno, jakmile je však celková návštěvnost vyšší, tak odvede mnohem více práce.

Pro někoho může být nevýhodou, že v Nginx není .htaccess a jeho pravidla je potřeba psát do konfigurace, což je jedna z věcí, kterou je potřeba se naučit. Zrovna .htaccess je věc, která apache dost brzdí. Pro jednu přednášku jsem zkoušel měřit výkon Apache vs Nginx a jen změnou webserveru jsem zvýšil výkon o 20% - www.slideshare.net/vsmitka/vkon-wordpress/35.

Pokud by přeci jen byl .htaccess z nějakého důvodu potřeba, tak je zde ještě LSWS (komerční), který je s Apachem poměrně hodně kompatibilní a poskytuje také solidní výkon.
Kajman
Profil
smitka:
Pokud je konfigurace serveru pod takovou kontrolou, že je možné vybírat mezi http servery, tak rozumní správci mají zakázané použití .htaccess a nastavení z nich mají přenesené do konfigurace apache. Bylo by pěkné vidět i porovnání apache s vypnutým AllowOverride i se zapnutým.

adam_vent:
Tipuji, že pro weby na drupalu nebo wordpressu, kde bude většina věcí zpracovávaná php, nebude mezi servery takový rozdíl jako mezi nainstalovanými verzemi php. A souhlas s Keeehim, že jeden odfláklý plugin nebo téma může výkon celého serveru výrazně zhoršit.
midlan
Profil
Já hlasuji pro nginx. Jeho konfigurace je daleko srozumitelnější než Apache. Chybějící podpora .htaccess je IMO problém jen pro veřejný hosting (nabízení klientům).
smitka
Profil
Kajman:
Bylo by pěkné vidět i porovnání apache s vypnutým AllowOverride i se zapnutým

Na slidu je zrovna srovnání Apache s AllowOverride zapnutým, s AllowOverride vypnutým a Nginx + "podvod" s Nginx se zapnutou microcache.

V testu vypnutí AllowOverride zvýšilo výkon o 14%.
Kajman
Profil
smitka:
Jasně, už to vidím, díky. Takže tam byl po nasazení Nginx nárůst výkonu o nějakých 6%.
smitka
Profil
Kajman:
Ano, přesně tak. V prezentaci je takový jednoduchý test pomocí ab. Dobré výsledky jsou ale i v reálném provozu, zde je například graf od zákazníka, u kterého se po přechodu na nginx pěkně zlepšila a vyrovnala rychlost stahování webu (graf z Google Search Console):

Davex
Profil
smitka:
V prezentaci je takový jednoduchý test pomocí ab.
To je klasický nedostatek většiny testů - jsou příliš umělé a nezohledňují spoustu věcí. Porovnávají webservery v neznámé konfiguraci, na operačním systému s neznámou konfigurací, na neznámé konfiguraci hardware :-)

Dobré výsledky jsou ale i v reálném provozu, zde je například graf od zákazníka, u kterého se po přechodu na nginx pěkně zlepšila a vyrovnala rychlost stahování webu
Ten web je statický či dynamický, bez cache nebo s jak velkou, s jedním nebo víc weby na serveru?
Jan Rippl
Profil
Mě osobně se nginx osvědčil spíše pro vysílání živého televizního streamu (z webkamery, apod.). Apache 2 používám pro klasické zobrazování webových stránek. Oba mám nainstalované na jednom serveru, a nepozoruji ani u jednoho nějaké výrazné zpomalení. Co se týče redakčního systému Drupal, tam nepomůže ani svěcená voda...
smitka
Profil
Davex:
Je pravda, že to ve slidech není, to jsem asi mohl doplnit... Na přednášce jsem to říkal, bylo to VPS od Wedosu - 4G RAM, SSD, 1 CPU, Debian 8, nastavení webserverů prakticky v defaultu. Testováno na čerstvě nainstalovaném WP.

Druhý graf je dynamický web v PHP, cache myslím jen nette (žádné celostránkové), několik fyzických serverů, jeden web v asi desítce mutací, několik milionů pageviews za den. Ale o to podle mě zase tolik nejde, důležitý je rozdíl, co to udělalo.

My jsme na Nginx kompletně přešli zhruba před asi před 5-6 lety a hodně nám to pomohlo. Nginx používáme i jako loadbalancer jako náhradu HA proxy.
Davex
Profil
smitka:
bylo to VPS od Wedosu - 4G RAM, SSD, 1 CPU, Debian 8, nastavení webserverů prakticky v defaultu. Testováno na čerstvě nainstalovaném WP.
Tak to vysvětluje, proč to bylo tak pomalé. Virtuální sdílený hardware, na úsporných CPU, s neoptimalizovaným software. Jenom devět requestů Wordpressu za vteřinu, to mě tedy zarazilo.

Druhý graf je dynamický web v PHP, cache myslím jen nette (žádné celostránkové), několik fyzických serverů, jeden web v asi desítce mutací, několik milionů pageviews za den.
Tak to ano, pro „jednoúčelový“ vysoce vytížený web s cache na vyhrazeném hardware se nginx hodí perfektně.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: