Proč je Apache nejrozšířenější?

gamer

Re:Proč je Apache nejrozšířenější?
« Odpověď #15 kdy: 05. 02. 2016, 08:00:05 »
jestli to někdo řeší, srovnával, umí NGINX použít, ale z nějakého důvodu se v konkrétním případě rozhodl pro Apache, přestože jak tu zaznělo, technicky žádnou obecnou výhodu nemá.

nginx třeba vůbec nemá alternativu k apachímu mod_fcgid. nginx má FastCGI, což je jen proxy (obdoba mod_proxy_fcgi v apache). Takže kdo chce provozovat fastcgi aplikace pod nginxem, narazí.


MP

Re:Proč je Apache nejrozšířenější?
« Odpověď #16 kdy: 05. 02. 2016, 09:07:48 »
1] apache umi php-fpm, neco jako mod_php je jiz pase by default od 2.4
2] .htaccess - to je dost dulezita vec (a neprijemny problem), kdyz to vyvojari pouzivaji a v nginxu to zatim neni jak nahradit

Daniel Kozak

Re:Proč je Apache nejrozšířenější?
« Odpověď #17 kdy: 05. 02. 2016, 10:56:08 »
Provozuju Drupal weby a s apachem to proste jede out of box. Nemam sebemensi duvod experimentovat.
JJ presne, to je ten duvod, spousta lidi proste nema potrebu to resit.

Uplne stejne by sis mohl polozit otazku proc jsou tak masivne rozsirene widle, proc uspelo VHS atd...
Tak tady to je trochu jednodusi, VHS uspelo protoze se prvni porno kazety vydavali na VHS. To same plati pro widle, vetsina pornostranek podporovala internet explorer a widle, takze linuxaci meli smulu a museli koukat na VHS nebo na casopisy :)

Ja

Re:Proč je Apache nejrozšířenější?
« Odpověď #18 kdy: 05. 02. 2016, 12:10:05 »
Jak to tak bývá, ptáte se nejspíš jen proto, abyste si přečetl potvrzení toho, co si už myslíte a odlišné informace ignorujete. Byly tu uvedeny postupně tyto argumenty pro apache httpd:

  • .htaccess - snadná změna lokální konfigurace bez potřeby práv ke globální konfiguraci a reloadu serveru
  • mod_php - možnost izolovat virtualhosty různých uživatelů na jednom serveru
  • výchozí konfigurace - když dám pod debianem apt-get install trac, dokuwiki, lam - automaticky se instaluje apache httpd
  • dokumentace - když hledám návod, zpravidla najdu návod pro apache httpd, případně návod jak převést konfiguraci z apache na ngnix
  • zažitost - lidé to prostě znají a pokud máme dva srovnatelně dobré produkty, sáhneme po tom co známe, pokud spěcháme (což my vždy :)

Argumenty proti apache httpd:
  • je pomalejší - o kolik? není to pod rozlišovací schopnost managera? nepředimenzovali jsme HW natolik, že rozdíl není znát?
  • je větší - prakticky lze opakovat poznámky předchozího bodu
  • má archaickou syntaxi - ale starší admini ji znají a mladší se ji naučí dřív, než se jim podaří starší adminy přesvědčit jak je nemožná

Shrnuto - ngnix se před časem objevil jako lehký a bezpečný server, který toho moc neumí, ale hodí se na proxy, balancery a embeded zařízení. Možná už to není pravda, možná už umí vše užitečné z apache httpd, ale ta nálepka mu ještě nějakou chvíli vydrží. Apache trčí na serverech starších zaběhlých služeb, které nestojí pro pár milisekund nebo procent obsloužených stránek/s migrovat na nové http servery.
Pro novou službu můžete vždy zvážit (náhodné pořadí, jako všechny seznamy v komentáři :)):
  • poběží to na samostatném serveru, nebo to nikam přilepím?
  • budu potřebovat dynamicky měnit konfiguraci?
  • mám čas učit se na tom novou technologii?
  • podporují ostatní užité komponenty novou technologii?


Rhinox

Re:Proč je Apache nejrozšířenější?
« Odpověď #19 kdy: 05. 02. 2016, 12:36:57 »
Citace
stále nechápu, proč je tak masivně mezi servery zastoupen nenažraný apache.

V celkovem poctu web-serveru (jako treba ta statistika co dela netcraft) se weby bezici solo na svem vlastnim serveru podileji nepatrne. Naprosta vetsina webu bezi na sdilenem hostingu, coz znamena ze bez .htaccess nebo neceho podobneho si neskrtnu. Vyresit tenhle problem (jak menit konfiguraci jednoho webu bez restartu web-serveru se stovkou webu?) pro nginx je mnohem slozitejsi, nez resit vykon apache (na to mi staci varnish+pound)...


Re:Proč je Apache nejrozšířenější?
« Odpověď #20 kdy: 05. 02. 2016, 13:17:30 »
Nepoužívání .htaccess je dáno výkonem, chápu, že každý na to nenarazí, ale rozdíl je extrémní.
NGINX je kvalitní kus kódu, opravdu je masivně nasazen u velkých systémů s vysokou zátěží (není to reverzní proxy nebo balancer).
V podstatě každý, kdo má jistý traffic, ho nasazuje, z důvodu úspory penízků. Ono jestli máte 5000 serverů, nebo třeba 250 je docela rozdíl.
Nicméně jeho administrace je velmi odlišná od Apache a ty úpravy mnohdy u malých webů za to nestojí. Apache byl jeden z prvních.

Výkonostně Apache proti NGINX propadá, čistotou programování také - jen prostě funguje a obvykle i stačí ;)
NGINX je navržen na maximální výkon a velká nasazení (clustery / LB), jeho funkcionalita se nekryje s Apachem.
„Řemeslo se naučí každý. Umění nikdo.“
„Jednoduchost je nejvyšší úroveň sofistikovanosti.“
- Leonardo Da Vinci

i-PRESS

  • ***
  • 100
  • NodeJS, Python, Perl, Lua, PHP
    • Zobrazit profil
Re:Proč je Apache nejrozšířenější?
« Odpověď #21 kdy: 05. 02. 2016, 13:59:57 »
Jak to tak bývá, ptáte se nejspíš jen proto, abyste si přečetl potvrzení toho, co si už myslíte a odlišné informace ignorujete

Díky za reakci a hezký souhrn pro a proti.

Není to jak píšete. Já s NGINXem pracuji už poměrně dlouho a to jak u mikrosajt, tak u větších clusterů na konverzi videí. Jsem spokojený, nemám důvod měnit a nepotřebuji utvrdit v něčem co už vím :-)

Netvrdím však, že jsem se setkal se všemi možnými typy aplikací a zajímalo mě, jestli je pro některé konkrétní případy vhodnější, případně dokonce jediná volba. To je celé. Vývoj nginx třeba sleduji, ale nesleduji Apache a spíše mě zajímá, jestli můžu narazit na případ, kdy jej budu potřebovat a může být má neznalost  problém. Apache umím nainstalovat, nakonfigurovat, i na lokálu jsem jej kdysi míval, o to nejde, ale nesleduji to podrobně, protože jej nepoužívám nyní nikde.

Často se zde zmiňuje možnost konfigurace, já v tom nevidím problém, vždyť i *.conf každé stránky je u ng samostatný soubor.

Každopádně mě zarazilo spíše to masové nasazení Apache, což se vysvětlilo webhostingy, kde není na výběr.

Takže díky :)

Re:Proč je Apache nejrozšířenější?
« Odpověď #22 kdy: 05. 02. 2016, 14:41:27 »
Pokud někdo začne na nginx asi nemá vůbec motivaci zkoušet Apache, protože mu nic lepšího nepřinese.
Nehledě na to, že Apache nepřekrývá funkcemi nginx, takže mu bude mnoho věcí chybět (obzvlášť pokud tedy má hodně serverů).

Apache je asi vhodnější pro hosting, protože lidi s ním umí. Museli by přepisovat .htaccess do notace nginx a bylo by třeba jim udělat nějakou tu editaci k tomu - poskytovat support.
Většina projektů nepotřebuje vysoký výkon, takže Apache je jednodušší a línější volba.
Netřeba cokoliv upravovat, obvykle to jede "outofthebox".


Nginx je prostě takový raketoplán, proti proudovému letadlu Apache. Každý nepotřebuje létat do vesmíru  :)
„Řemeslo se naučí každý. Umění nikdo.“
„Jednoduchost je nejvyšší úroveň sofistikovanosti.“
- Leonardo Da Vinci

i-PRESS

  • ***
  • 100
  • NodeJS, Python, Perl, Lua, PHP
    • Zobrazit profil
Re:Proč je Apache nejrozšířenější?
« Odpověď #23 kdy: 05. 02. 2016, 14:48:44 »
Hezky napsáno.

Škoda že tady není nějaké tlačítko "+1" .)

Ondrej

Re:Proč je Apache nejrozšířenější?
« Odpověď #24 kdy: 05. 02. 2016, 15:03:01 »
Což je ten největší průser v IT bych řekl, člověk co se neučí nové věci...
Naopak - nejhorsi je mladej chytrolin co si nekde neco zkoukl na jůtubku a ted dela ramena jak je to cool a moderni, ale praxe = 0 a chce vnaset vitr do veci co funguji. Zatim jsem nevidel argument proc bych mel nginx pouzit misto apache(proti vykonu zde bylo dano na druhou stranu vah dostatek argumentu).
To je zase druhej extrém...
Nebudu tady opakovat, proto je odkážu na příspěvky od Jana Formana...

gamer

Re:Proč je Apache nejrozšířenější?
« Odpověď #25 kdy: 05. 02. 2016, 15:09:20 »
Pokud někdo začne na nginx asi nemá vůbec motivaci zkoušet Apache, protože mu nic lepšího nepřinese.
Nehledě na to, že Apache nepřekrývá funkcemi nginx, takže mu bude mnoho věcí chybět (obzvlášť pokud tedy má hodně serverů).

Můžeš mi říct, jak mám nahradit mod_fcgid v apache nginxem? Takovou funkcionalitu nginx vůbec nemá. FastCGI v nginxu je jen hloupá proxy, neumí to vytvářet workery, buď si funcionalitu vytváření workerů musím doimplementovat sám, nebo musím vytvořit konstantní počet workerů při startu, což se neumí škálovat podle záteže. V apache to funguje out of the box...

Re:Proč je Apache nejrozšířenější?
« Odpověď #26 kdy: 05. 02. 2016, 16:20:43 »
Pokud někdo začne na nginx asi nemá vůbec motivaci zkoušet Apache, protože mu nic lepšího nepřinese.
Nehledě na to, že Apache nepřekrývá funkcemi nginx, takže mu bude mnoho věcí chybět (obzvlášť pokud tedy má hodně serverů).

Můžeš mi říct, jak mám nahradit mod_fcgid v apache nginxem? Takovou funkcionalitu nginx vůbec nemá. FastCGI v nginxu je jen hloupá proxy, neumí to vytvářet workery, buď si funcionalitu vytváření workerů musím doimplementovat sám, nebo musím vytvořit konstantní počet workerů při startu, což se neumí škálovat podle záteže. V apache to funguje out of the box...

Ano tohle není implementováno, používá se php-fpm. Také to ale funguje v podstatě jako out of the box. Mnohdy jsem nechával dost zatížené systémy s jedním workerem, odezvy byly stejné. Zas je fakt, že čas pro běh skriptu byl minimální sám o sobě.
„Řemeslo se naučí každý. Umění nikdo.“
„Jednoduchost je nejvyšší úroveň sofistikovanosti.“
- Leonardo Da Vinci

Re:Proč je Apache nejrozšířenější?
« Odpověď #27 kdy: 05. 02. 2016, 16:43:10 »
Nginx je cílený na velké uživatele (desítky miliónů uživatelů připojených najednou), proto je jeho funkcionalita trošku jiná, než Apache.
Byl zaplacen a následně uvolněn jako opensource - je to plně komerční produkt a poměrně drahý od 1900USD ročně.

Běžný uživatel s jedním serverem používá jen zlomek jeho funkcionality jeho síla je jinde. Proto na něm jede většina velkých webů, ty nekompatibilita netrápí, jde o výkon a následně ušetřené penízky za servery. Malým uživatelům se to nevyplatí, pokud je třeba něco předělávat apod.
„Řemeslo se naučí každý. Umění nikdo.“
„Jednoduchost je nejvyšší úroveň sofistikovanosti.“
- Leonardo Da Vinci

gamer

Re:Proč je Apache nejrozšířenější?
« Odpověď #28 kdy: 05. 02. 2016, 19:58:08 »
Ano tohle není implementováno, používá se php-fpm. Také to ale funguje v podstatě jako out of the box. Mnohdy jsem nechával dost zatížené systémy s jedním workerem, odezvy byly stejné. Zas je fakt, že čas pro běh skriptu byl minimální sám o sobě.

Já ale nechci PHP, mám generickou FastCGI aplikaci, kterou chci provozovat pod webserverem. Apache nabízí mod_fcgid, nginx nemá alternativu. Php-fpm jde pokud vím použít jen pro PHP. Jeden worker taky není řešení, pokud worker na něco čeká (až mu přijdou data po síti), nelze to takhle provozovat.

Re:Proč je Apache nejrozšířenější?
« Odpověď #29 kdy: 06. 02. 2016, 17:10:55 »
Důvodů proč nepoužívat Nginx je několik:

1) Není to na mě, rozhoduje manager.
2) Jsem lepič a copypastovač, ale prostě jsem profík a vím to ze všech nejlíp
3) Nestojí mi to za námahu řešit, nezaplatí mi to
4) Klienti chtějí standard z apache, i když z nich polovina neví, co to apache je
5) Provozuji bastl, ve kterým by jsem se musel hrabat. A vůbec funguje to...
6) Apache potřebuju, protože to Nginx neumí