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

Makroviry inspirují

Pavel Houser , 20. září 2017 06:30
Pavel Houser

Úspěšný návrat malwaru šířeného pomocí maker vedl útočníky k tomu, že svou pozornost obrátili k příb...

Více






Kalendář

21. 09. Mobilní řešení pro business
25. 09.

29. 09.
Susecon 17
25. 09.

29. 09.
Microsoft Ignite 2017
RSS 

Zprávičky

Američtí operátoři T-Mobile US a Sprint jednají o fúzi

ČTK , 20. září 2017 11:00

Tržní hodnota T-Mobile US se pohybuje kolem 51 miliard dolarů hodnota Sprintu dosahuje zhruba 30 mil...

Více 0 komentářů

EK chce vyšší pravomoci pro řešení kybernetických útoků

ČTK , 20. září 2017 09:00

Celounijní certifikace by se měla týkat miliardy zařízení kritické infrastruktury....

Více 0 komentářů

Oblíbený nástroj CCleaner obsahoval malware

Pavel Houser , 19. září 2017 17:17

Ohroženy mohou být miliony uživatelů. Zranitelné jsou verze CCleaner 5.33 a CCleaner Cloud 1.07.3191...

Více 1 komentářů

Starší zprávičky

EK navrhuje nová pravidla pro pohyb dat neosobního charakteru

ČTK , 19. září 2017 15:26

Členské státy EU by už podle návrhu neměly nutit organizace, aby uchovávaly či zpracovávaly data na ...

Více 0 komentářů

Na trh přichází Synology C2 Backup

Pavel Houser , 19. září 2017 11:34

Synology strávila více než rok budováním vlastního datového centra....

Více 0 komentářů

Hackathon veřejné správy přilákal na 6 desítek vývojářů

Pavel Houser , 19. září 2017 08:00

Propojit otevřená data veřejné správy v užitečné aplikace bylo cílem šesti desítek programátorů, kte...

Více 0 komentářů

Úřad pro ochranu hospodářské soutěže zkoumá zakázky na IT systémy

Pavel Houser , 18. září 2017 12:50

Úřad aktuálně se zaměřil na smlouvy na IT systémy uzavřené v jednacím řízení bez uveřejnění. ...

Více 0 komentářů