Apache en Nginx (uitgesproken als "engine-x") zijn de topspelers in de webserverbusiness. Samen zijn ze goed voor bijna 50 procent van het internetverkeer. Omdat ze de twee meest voorkomende en populaire open source webservers zijn, werken ze aan het gemeenschappelijke doel - dat wil zeggen, zorgen voor verschillende workloads om te voldoen aan de behoeften van verschillende omgevingen voor moderne besturingssystemen, waaronder Windows en UNIX. Hoewel Apache een gevestigde naam is in de webserverbusiness, heeft Nginx zijn handen vol met zoveel websites en de snelheid waarmee het webverkeer beheert, is er geen terugkijken. Het klopt dat beide webservers niet door elkaar kunnen worden vervangen, maar ze hebben hun eerlijke voors en tegens.
De Apache HTTP-server of gewoon "Apache", is open-source high-performance webserver-software ontwikkeld en onderhouden door een consortium van ontwikkelaars onder de sponsoring van de Apache Software Foundation. Het is een collaboratief webserverproject dat is ontworpen om een robuuste, veilige en efficiënte commerciële webserver te creëren die voldoet aan de huidige HTTP-standaarden. Het is een gezamenlijk project dat wordt beheerd door een open gemeenschap van vrijwilligers over de hele wereld om de HTTP-webserver en de bijbehorende documentatie op internet te ontwikkelen. Apache is de prominente marktleider op het gebied van webserver sinds de introductie in 1995. Het heeft in 2009 de 100 miljoen websites bereikt.
Apache blijft de eerste keuze van de serverbeheerders vanwege zijn voedingscompatibiliteit en ondersteuning voor meerdere platformen. Hoewel Apache efficiënt werkt op vrijwel elk belangrijk besturingssysteem, waaronder Windows, Linux, UNIX, OSX en NetWare, wordt het meestal gebruikt in combinatie met Linux. De architecturale eenvoud en flexibiliteit maakten het een populaire keuze onder beheerders omdat er een zekere dorst bestond in de vroege gemeenschappen om te innoveren en te experimenteren met nieuwe technologieën, en Apache was hier het middelpunt van. Apache werd de ruggengraat van het World Wide Web. Maar dat is dat. Zoals het oude gezegde luidt, als je aan de top bent, is de enige manier om naar beneden te gaan.
Ze zeggen iemands verlies in de winst van een ander. Dit is precies wat er gebeurde. De machtige status van Apache is getroffen door zijn potentiële rivaal, Nginx. Als een van de eerste van de eerste kanshebbers om een wereldwijde erkenning te ontvangen, is Nginx ook een solide webserverplatform dat is ontworpen om te voldoen aan moderne webeisen. Nginx, ontwikkeld door de Russische ontwikkelaar Igor Sysoev, is een gratis open-source HTTP-server die ook kan worden gebruikt als reverse proxy, mailproxy en een generieke TCP / UDP-proxyserver. Het is gericht op het efficiënt en met minimale middelen bedienen van een groot aantal gelijktijdige gebruikers. Op het moment dat het verwerken van massaal webverkeer vrij onmogelijk was, kwam Nginx hem te hulp.
Hoewel Nginx op veel fronten niet kan concurreren met de feature-rijke Apache, maakt de asynchrone status en single-threaded architectuur het een slimme keuze ten opzichte van Apache. Het wordt vaak geprefereerd door beheerders voor zijn resource-efficiëntie, lichtgewichtarchitectuur en hoge concurrency. En het beste deel, het kan worden geïmplementeerd als een stand-alone HTTP-server om de architectuur van de webserver met minimale middelen te verbeteren. Bovendien is het vermogen om statisch verkeer snel en efficiënt te bedienen met beperkte hardwarebronnen ongeëvenaard. Bovendien kan Nginx ook een potentiële schokdemper zijn, die Apache-servers zou beschermen tegen plotselinge verkeerspieken en beveiligingskwetsuren. Kort gezegd, Nginx biedt alle basisfuncties van de HTTP-server zonder in te leveren op de mogelijkheid om meerdere verzoeken met beperkte hardwarebronnen af te handelen.
Apache | Nginx |
Apache volgt een multi-threaded benadering om clientaanvragen te verwerken. | Nginx gebruikt een evenementgestuurde aanpak om clientaanvragen te verwerken. |
Het behandelt dynamische inhoud binnen de webserver zelf. | Het kan de dynamische inhoud niet native verwerken. |
Het kan niet tegelijkertijd meerdere verzoeken verwerken met zwaar webverkeer. | Het kan meerdere clientaanvragen gelijktijdig en efficiënt verwerken met beperkte hardwarebronnen. |
Modules worden dynamisch geladen of ontladen, waardoor het flexibeler wordt. | De modules kunnen niet dynamisch worden geladen. Ze moeten worden gecompileerd in de kernsoftware zelf. |
Apache is ontworpen als een webserver. | Nginx is zowel een webserver als een proxyserver. |
Een enkele thread kan maar één verbinding verwerken. | Een enkele thread kan meerdere verbindingen verwerken. |
Zowel Apache als Nginx zijn open-source high-performance webservers die verschillende werkbelastingen aankunnen om aan de eisen van moderne webeisen te voldoen. Ze zijn conceptueel dicht bij elkaar, maar zijn naaste concurrenten in de webserverbusiness. Apache is al 20 jaar marktleider in het ecosysteem van webservers en is veel populairder, maar Nginx heeft niet alle voordelen. Terwijl Apache tot het verleden behoort, is Nginx de toekomst van web-apps en websites.