OpenSource Apache versus Microsoft IIS

Marek Erneker, 01. červen 2009 09:14 0 komentářů
Rubriky: Internet

Logo Ignum
Drtivou většinu internetového provozu stále ovládají 2 nejznámější HTTP servery – OpenSource Apache a Microsoft IIS (Internet Information Server). Každý v podstatě představuje jeden ze dvou předních fenoménů programování webových aplikací – PHP a .NET. Kterému dát přednost a proč?


Marek Erneker
Marek Erneker

Ačkoliv internet nejsou pouze webové stránky, představují tyto jeho nezanedbatelnou a nejvyužívanější část. Webové stránky nám nabízí široké možnosti zprostředkování informací, tedy jeden ze základních principů internetu a tak je nutné provozu HTTP serveru věnovat řádnou pozornost.

Souboj dvou řešení


Svět již dlouhá léta ovládají dvě jména HTTP serverů – Apache a IIS. Zatímco Apache je spojován především se skriptovacím jazykem PHP, IIS představuje zcela jiný směr, a to Microsoft technologii .NET.
Současný vývoj PHP se po úspěšné implementaci podstatné části objektového modelu orientuje hlavně na opravu chyb a sjednocování podporovaných modulů/rozhraní, zatímco .NET se věnuje hlavně další integraci tříd a funkcionalit zjednodušujících programátorům další práci.

Rozdíly ve filosofii


Třebaže práce s oběma programovacími jazyky se znatelně liší a tedy se tyto i těžko porovnávají, jsou již nyní patrné zvětšující se rozdíly. Přístup obou serverů je odlišný v podstatě od počátku až do konce. Apache byl od začátku vyvíjen jako OpenSource pod licencí GPL a zpracovává každý požadavek klienta jako samostatný úkol. Naproti tomu IIS, které je součástí většiny Windows distribucí pro PC a je vydáván pod společnou licencí s OS Windows, je schopno zpracovávat souvisle požadavky stejného klienta nad stejným paměťovým blokem. Programátor v .NETu pak vyvíjí webovou aplikaci jako celek, nikoliv jako oddělené a na sebe více či méně navazující jednotlivé události vyvolávané požadavkem klienta. Zjednodušuje se tak např. držení proměnných, ale třeba i otevřených souborů či připojení k DB.

Z toho logicky vyplývá, že stále více programátorů se věnuje právě .NETu. Odlišný přístup při programování webu jako celistvé a objektové aplikace zvyšuje kvalitu výsledku. Již několik let máme možnost IIS spravovat i skrze definovaný formát XML či příkazy PowerShellu, což usnadňuje správu celého systému a tvorbu vlastních nástrojů.

Apache: otevřenost


Apache naproti tomu vyniká svou otevřeností a množstvím tzv. modulů, které slouží k rozšíření jeho schopností. Podporuje vznik vlastních Apache modulů a jejich užití pro speciální případy konkrétního provozovatele. Výjimkou není ani zásah do samotných zdrojových kódů a úprava některých vlastností tohoto serveru. Skriptovací jazyk PHP, jež se pro mnohé programátory stal modlou a ještě častěji byl prvním krokem do programovacího světa, je pak jen dalším z modulů. Podobně jako je .NET spojován především s IIS, je PHP spojováno s Apache (ačkoliv provoz na jiných webových serverech je bez větších obtíží možný také).
Oba produkty se od sebe každopádně vzdalují a jejich role je čím dál více doplňující, nikoliv zastupující. Jednoznačně rozhodujícím kritériem při volbě mezi nimi je pak programovací jazyk daného projektu a tomu odpovídající prostředí jak vývoje, tak i následného provozu.

Alternativy


Bylo by chybou zapomenout na další produkty, jako jsou např. Mathop nebo lightHTTP. Nelze předpokládat, že by některý z nich chtěl konkurovat Apache nebo IIS v počtu obsluhovaných webových aplikací. Jejich význam spočívá hlavně ve speciálních aplikacích jako např. poskytování statického obsahu souborů nebo při realizaci speciálních programovacích jazyků, u nichž bývá webový server součástí celého produktu.
Situace ve využití webových serverů se velmi podobá odvěké válce mezi OS. Apache představuje komunitu OpenSource, jehož nejčastější užití je na OS Linux, a IIS zase typické komerční řešení společnosti Microsoft. Zatímco Microsoft jednoznačně vede v užití mezi domácími počítači, Linux kraluje na poli serverových počítačů, čemuž pak odpovídá i počet hostovaných doménových jmen.

O autorovi


Marek Erneker pracuje ve společnosti IGNUM pátým rokem. Před svým jmenováním výkonným ředitelem působil jako hlavní programátor a člen úzkého vedení společnosti. Je zodpovědný za každodenní řízení aktivit společnosti a její další rozvoj ve všech oblastech působnosti.


Komentáře

RSS 

Komentujeme

V datových centrech už nejde o Windows?

Pavel Houser , 22. březen 2017 12:47
Pavel Houser

Trevor Pott si na The Register pokládá otázku o budoucnosti serverových Windows na platformě ARM. ...

Více






RSS 

Zprávičky

YouTube dál ztrácí inzerenty kvůli obavám z kontroverzních videí

ČTK , 26. březen 2017 09:00

Internetový portál pro sdílení videí YouTube dál ztrácí inzerenty kvůli obavám, že jejich reklamy bu...

Více 0 komentářů

Čínská ZTE přiznala nelegální zasílání zboží z USA do Íránu

ČTK , 25. březen 2017 09:00

Čínský výrobce telekomunikačního zařízení ZTE Corp. přiznal před soudem v Texasu vinu, že nelegálně ...

Více 1 komentářů

Bosch a IBM začaly spolupracovat na IoT pro průmysl

Pavel Houser , 24. březen 2017 13:08

Výrobci aut mohou nyní plánovat a organizovat aktualizaci softwaru u milionů vozů....

Více 0 komentářů

Starší zprávičky

Apple čeká na Novém Zélandu vyšetřování kvůli daním

ČTK , 24. březen 2017 13:00

Americkou společnost Apple čeká na Novém Zélandu vyšetřování, navzdory miliardovému obratu tam totiž...

Více 0 komentářů

Huawei a SUSE spolupracují na platformě pro kritické úlohy

Pavel Houser , 24. březen 2017 11:42

SUSE Linux Enterprise Server jako preferovaný standardní OS pro KunLu umožňuje výměnu procesorů a pa...

Více 0 komentářů

Novela zavádí lepší užití informačních systémů veřejné správy

ČTK , 24. březen 2017 08:00

Zákon má mj. zabránit duplicitě informačních systémů a plýtvání penězi při jejich nákupu....

Více 0 komentářů

Workplace Hub pro optimalizaci systémů i procesů

Pavel Houser , 23. březen 2017 16:09

Konica Minolta v partnerství se společnostmi Microsoft, HPE, Sophos, Canonical a BrainTribe přichází...

Více 0 komentářů