Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 47 reacties

Nginx, het bedrijf achter de gelijknamige webserver, meldt dat inmiddels meer dan 146 miljoen websites draaien op de webserversoftware. Een jaar geleden stond de teller nog op 96 miljoen websites die op de opensource-webserver draaien.

NginxHet bedrijf maakte tevens bekend dat van de duizend meest bezochte websites 38 procent Nginx draaien, tegenover 31,6 procent een jaar geleden. De snelle groeicijfers van Nginx, met een jaargroei van meer dan 50 procent, zijn bekendgemaakt bij de release van versie 1.6 als stabiele versie en versie 1.7 in het zogenaamde mainline-releasekanaal. Begin april werd door de firma nog Nginx Plus Release 3 uitgebracht, een commerciële uitvoering van de webserver met extra functionaliteiten.

Nginx zegt de komende maanden nieuwe tools voor de opensource-webserver uit te zullen brengen, aldus TechCrunch. Zo moet er een nieuwe management- en beheertool komen om grote aantallen Nginx-sites aan te kunnen sturen. Ook wordt er gewerkt aan een betere samenwerking met de Linux-kernel waardoor de webserversoftware beter presteert op websites die grote hoeveelheden data cachen.

Moderatie-faq Wijzig weergave

Reacties (47)

Nog niet van gehoord, maar als het een waardig apache alternatief is, misschien ff onderzoeken
Het is zeker een waardige alternatief, het heeft zo ze voor en nadelen maar zou het zeker aanraden om eens serieus naar te kijken.

Sites:
wikivs[en]:
http://www.wikivs.com/wiki/apache_vs_nginx

voor php[en]:
http://systemsarchitect.n...ginx-for-php-application/

magento [nl]:
http://www.dutchento.org/nginx-vs-apache/

[Reactie gewijzigd door xleeuwx op 24 april 2014 17:01]

Daarnaast is het ook handig om Nginx voor Apache te plaatsen, als je nog niet van Apache af kan komen.

Omdat Apache in ieder prefork proces ook mod_php en bijbehorende modules moet inladen, heb je snel een 50MB proces wat zich bezig houd met versturen van een CSS bestandje. Nginx kan dit efficienter. Zo laten we Nginx alle niet-PHP bestanden (static files) afhandelen, en dat ontlast Apache. Deze wordt nu alleen voor de PHP-requests ingezet.

Voor WordPress websites heb ik gemerkt dat dit een behoorlijke performance boost gaf.

[Reactie gewijzigd door YaPP op 24 april 2014 19:29]

Waarom laten jullie niet PHP ook direct via nginx werken?
Puur omdat zo de bestaande plugins zo werkten. Op andere servers heb ik php-fpm ook ingezet. Het enige waar je op moet letten in deze configuratie, is dat Nginx de .htaccess bestanden natuurlijk negeert.

[Reactie gewijzigd door YaPP op 24 april 2014 19:36]

http://winginx.com/en/htaccess

Dit is geen perfecte oplossing, maar htaccess files die niet te complex zijn kan je hier min of meer rechtstreeks uit halen. Bespaart je heel wat tijd bij het converteren!
Zeker. Een aantal van onze grotere klanten draaien inmiddels op nginx en hebben daarmee de performance flink verbeterd!
Wij gebruiken het vooral nog als reverse caching proxy;
Requests komen op Nginx binnen en die probeert ze uit cache te bedienen, of haalt zelf de content uit het originele Apache/PHP backend op.

Apache volledig de deur uit zie ik hier zo snel nog niet gebeuren. Ik meen dat Nginx geen of mindere functionaliteit heeft zoals mod_rewrite en mod_setenv.
Nginx is daar juist zeer goed in. Het verschil is dat Nginx de rewrites in de config doet en Apache in .htaccess. Dat is n van de reden waarom Nginx zoveel sneller is met bepaalde acties. Het scheelt heel wat I/O calls als het gewoon in de config staat.

http://www.nginxtips.com/...x-support-htaccess-files/
Als je bij apache die rewrites in de apache conf doet is het ook snel. .htaccess files zijn traag.

nginx is echt heel fijn. Veel simpeler te configgen dan apache. Ik gebruik het icm django/uwsgi. Voor static files is het ook sneller dan apache.

Apache kan wel veel meer dan nginx; webdav support bijvoorbeeld. En veel php applicaties leunen op mod_php en niet de php/fastcgi combo.
Ik zou zo niets weten wat Nginx niet kan en Apache wel. Webdav is ook geen enkel probleem.
kan met apache toch ook gewoon in de config ?
Klopt daarom wordt Nginx dus vooral in de configuratie gebruikt zoals jij doet, als reverse proxy. Voor de buitenkant ziet het er dan uit alsof de website op nginx draait terwijl dat daarna wellicht Apache of iets anders is.
rewrite is zeker mogelijk in nginx. Voor de meest gebruikte modules zijn alternatieven te vinden. Zie ook http://wiki.nginx.org/ModuleComparisonMatrix

Apache is goed wanneer je al die uitgebreide functionaliteit nodig hebt, maar dat is voor velen zeker niet het geval, wanneer er statische content geserveerd word of een PHP site achter zit dan heeft nginx eigenlijk alleen maar voordelen. Veel eenvoudiger te configureren en een stuk performanter dan Apache.
Het zou goed kunnen dat nginx niet de volledige featureset van mod_rewrite en mod_setenv implementeert. Voor "normaal dagelijks" gebruik is het echter wel goed genoeg om alles (zover wij nodig hebben) mee te kunnen.

nginx heeft een rewrite module en als je via FastCGI naar php-fpm praat, kan je via de fastcgi_param uit de http_fastcgi module ook alles doorsturen als environment variabelen. Verder zie ik dat op andere vlakken nginx juist weer meer kan dan Apache, en dat gebruiken wij weer erg veel.

Het is meer een kwestie van smaak & voorkeur, tenzij je hele specifieke eisen hebt aan de modules van Apache of nginx :)
Waarom de keuze voor Nginx en geen Varnish?
Worden dan ook alle load balancers en proxies geteld? Hier wordt nginx ook steeds meer voor gebruikt, de achterliggende servers kunnen dan b.v. wel apache of iis zijn.
Vast wel. Ook bv plesk heeft nginx support. Het gebruikt nginx op de frontend als een reverse proxy. Daarachter draait apache. Apache bekijkt of er statische of dynamische content wordt opgevraagd. In het geval van statische content wordt de locatie daarvan aan nginx doorgegeven, welke dan de statische content served. Dynamische content (bv php scripts) worden door apache uitgevoerd. De resultaatpagina wordt dan aan nginx verstuurd en die served dat vervolgens aan de bezoeker.
Zo worden komen de apache processen sneller vrij en kan de server een en ander sneller afhandelen. Denk dat in de praktijk veel combinaties van nginx en apache voorkomen. Voor de buitenwereld lijkt er nginx te draaien.
Maar php-scripts hoeven niet per se uitgevoerd te worden door apache. Zelf heb ik apache een tijd geleden al de deur uit gedaan; php-requests worden doorgestuurd naar php-fpm op een unix socket.
Ik denk dat ze gewoon headers tellen. Aangezien bijna elke server headers teruggeeft op welke software ze draaien.
Meestal geven proxy's headers terug van de proxy-server, niet de achterliggende server. Een goed voorbeeld is Stack Overflow; geschreven in .NET en draait op IIS, maar hun reverse proxy draait op nginx, dus vandaar dat de site 'draait' op nginx.
Leuk weetje :) wist niet dat StackOverflow in .NET is geschreven.
Install in firefox de addon wappalyzer, ze je wel meer vreemde combinaties voorbij komen :)
Dat is niet zo. Varnish is een grote reverse caching proxy waar oa Facebook, Ebay, Marktplaats, TomTom, RTL en Nu.nl gebruik van maken, echter veranderd Varnish de "Server" header in de response niet.

Varnish plaatst enkel de X-Varnish header. Zo krijg je bij Nu.nl terug:

Via: 1.1 varnish
.......
......
Server: Apache
......
X-Varnish: 1331005582 1331004243

De claim van nginx vind ik dan nogal hoog van de toren blazen aangezien er vaak gewoon nog Apache achter zit die het chte werk doet waar nginx als proxy speelt.
Voor zover ik weet is NGINX alleen interessant (sneller) voor sites die veel statische content aanbieden (relatief simpele sites dus). Misschien is dat ondertussen veranderd?

[Reactie gewijzigd door rvdv12773 op 24 april 2014 17:22]

Zeker. Nginx in combinatie met PHP-FPM is snel, flexibel en the way to go. Wij (hostingprovider) draaien grote loadbalanced omgevingen al jaren in volle tevredenheid op Nginx. Websites of complexe applicaties die wel op Apache kunnen draaien en niet op Nginx zijn we nog nooit tegen gekomen.
ik ben wel benieuwd naar welke control pannel jullie dan aanbieden
Ik denk dat ze als hostingpartij aanbieden wat de klant wilt.
DirectAdmin en soortgelijke zijn nou niet de software die daar intern wordt gebruikt.
Dat wordt geleverd aan klanten die veel wijzigingen zelf willen doen, maar niet weten hoe.
Nginx doen we niet met controlpanel. Grote websites en mission critical applicaties draaien doorgaans ook geen controlpanel. Op servers met Directadmin gebruik ik nog Apache omdat die ondersteuning in combinatie met Directadmin gewoon beter is.

Apache is overigens prima hoor, maar Nginx is sneller en ik vind de configuratie een stuk handiger.
Dynamische sites draaien uitstekend op Nginx. Nginx is zo'n beetje de standaard voor Django en Ruby on Rails websites, dat zijn meestal dynamische websites.

Het is niet zo dat Nginx weinig opties heeft, dat je enorm beperkt wordt en dat het daarom in de praktijk alleen geschikt is voor statische bestanden. Doordat het zo licht en snel is, is het k geschikt voor statische bestanden.

Vergeleken met Apache heeft Nginx veel minder functionaliteit, maar Apache heeft gigantisch veel configuratiemogelijkheden en modules waarvan je de meesten nooit zal gebruiken. Alle dingen die je wl gebruikt ondersteunt Nginx ook.
Iemand ervaring met apache te vervangen door nginx op een directadmin server?
Dit tijdens de installatie fase niet een werkende server vervangen.
Heel simpel.
Geen DirectAdmin gebruiken....
NGINX is best simpel te fixen, alleen ondersteunt het geen htaccess files.
Voor de rest, great, in combinatie met PHP5-FPM is ie helemaal super deluux, inclusief chroot jail ;)
Sinds kort ook een website van een klant draaien op een cluster met varnish + 3x nginx-php-fpm en draait gewoon goed. Geheugen gebruik is gewoon veel beter dan apache icm met php.

Het is alleen wat werk om in te richten als je apache/htaccess gewend bent. Maar ik ben dusver nog niet tegen onoverkomelijke problemen aan gelopen.

[Reactie gewijzigd door -weenie- op 24 april 2014 17:52]

Tijdje terug apache met mod-php vervangen door mod-fastcgi en php-fpm. De nieuwe event mpm in apache 2.4 maakt veel goed tov nginx en lighttpd.
Apache + php fcgid met mpm event en daarna nginx er nog voorzetten als reverse proxy en je resultaten + veiligheid zullen nog veel beter zijn...
Nu alleen de beveiliging en weerbaarheid nog wat verbeteren.
Ik zit die grafieken te bekijken, en misschien lees ik t verkeerd, maar (en dat is ook mijn ervaring) zo te zien komt nginx juist erg goed uit de bus? Het is iig sneller en weerbaarder dan Apache httpd, ook minder gevoelig voor veel aanvallen en httpd heeft nog altijd die smerige symlink race condition...
Het klopt dat nginx beter uit de bus komt dan Apache, maar zeker niet als beste. Dat is mijn punt.
En mijn websites zijn er een paar van, na alle instelling hell van Apache vind ik nginx echt een verademing, en dat het wat lichter is van zichzelf is mooi meegenomen zeker op platformen zoals een Raspberry Pi, een lichte cloud server of VPS waar resources schaars of betaald zijn.
voor de pi kun je beter gewoon een embedded http oplossing zoeken in plaats van apache of nginex,

verder, heb ik altijd het idee gehad dat nginx maar op beperkte vlakken beter presteerd dan anderen.
Dat laatste is een beetje heel erg vaag. Op welke gebieden dan bijvoorbeeld niet?
Wat precies maakt Nginx beter dan Apache, en waarom heeft Apache die verbeteringen niet?
Ik gebruik al een tijd nginx voor professionele projecten (in combinatie met uwsgi en flask) en sinds kort nu ook op al mijn persoonlijke dingetjes. Vind het zelf een stuk makkelijker op te zetten dan een apache server. Bovendien de koppeling met uwsgi is ook helemaal niet verkeerd, dus voor mijn application stack is het ideaal.
NGINX IS FACKING AWESOME !
Zo, in 1 zin.

NGINX laat sowieso Apache alle hoeken van de kamer zien.
Veel beter kwa streaming files.
Benchmarking Apache en NGINX laat genoeg zien.

[Reactie gewijzigd door Power2All op 24 april 2014 17:08]

Goede benchmarking laat vooral zien dat het 2 verschillende producten zijn met elk een eigen doel.

Goede benchmarking laat zien dat Nginx sneller is in wat het wel kan, maar dat er simpelweg een heleboel is wat het niet kan.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True