Graag had ik eens jullie meningen gehoord ivm het plaatsen van een Nginx proxy voor een apache2 server die al dan niet via directadmin draait.
Wat zijn jullie ondervinden? Hebben jullie er misschien cijfers van?
Likes: 0
Graag had ik eens jullie meningen gehoord ivm het plaatsen van een Nginx proxy voor een apache2 server die al dan niet via directadmin draait.
Wat zijn jullie ondervinden? Hebben jullie er misschien cijfers van?
Dat gaat je niet erg veel helpen. Als apache door Nginx te vervangen is dan kan je een heleboel.
Wil je iets van proxy/caching dan raad ik je Varnish aan. Die is hier ook echt voor bedoeld en kan nog vele malen beter performen dan Nginx.
Dus eigenlijk concreet: Wat wil je bereiken?
Op ons Magento platform hebben wij nginx in plaats van apache. Dat werkt prima. Maar lang niet alles draait vlekkeloos op nginx.
Marin Heideman (DigiState B.V.)
nginx is erg goed in wat het doet.
Maar het hangt heel erg af van wat je op (en vooral:achter) je apache server doet of nginx enig verschil (positief of negatief) gaat maken.
"De sites zijn traag, ik snap niet waarom, dus zet ik er een proxy voor" gaat waarschijnlijk niet helpen.
Marin Heideman (DigiState B.V.)
Nginx voor Apache zetten werkt zeker. Het zal zeker ook helpen een 'trage' site sneller maken mits je weet wat je met Nginx kan en welke snelheidsproblemen je wel via andere wegen dient op te lossen. Als een website echt altijd traag is zal Nginx niet heel veel uitmaken. Maar met een website nog sneller maken kan Nginx zeker een steentje bijdragen.
Als je alleen al alle statische afbeeldingen bijvoorbeeld direct door Nginx van de daadwerkelijke locatie leest levert dit toch al snel een 25% snellere website op.
Vooral interessant is als je naar caching kijkt (meeste dynamische websites zijn namelijk helemaal niet zo dynamisch), voor gasten kan je bijvoorbeeld prima een 10 seconden oude versie serveren, terwijl iemand die ingelogd is wel een unieke versie van de website wil/moet zien. Ik merk dat Nginx hier best wel goed in is en daarmee prima PHP/MySQL en achterliggende servers kan ontlasten.
Qua functionaliteit kan Nginx tegenwoordig het meeste wat Varnish ook qua caching kan. Waardoor ik Varnish eigenlijk nooit nodig heb gehad voor drukkere websites.
Echter wil je Nginx in combinatie met directadmin gaan gebruiken kan je meestal dat zeer uitgebreide caching vergeten. Uitgebreide caching vereist specifieke aanpassingen per website en in principe wil je de klant geen toegang geven tot de Nginx configuratie aangezien je helaas ook zeer snel wat stuk kan maken aan Nginx aangezien uiteindelijk Nginx op één configuratiebestand draait. Je zou dan vooral kunnen kijken naar bijvoorbeeld afhankelijk van statische bestanden die overal algemeen hetzelfde zijn.
Zoals Joriz al zegt, Nginx is een mooi systeem, ook een erg snel systeem om ervoor te zorgen dat caching gebruikt kan worden. Maar je loopt wel snel tegen beperkingen aan van de applicaties die je erachter zet. Denk hierbij aan dynamische content.
Zeker voor een shared hosting doos zie ik eigenlijk de toegevoegde waarde niet echt. Want het enige wat er gecached kan worden, met zekerheid, is de HTML, de plaatjes, de CSS en de JS. Maar de .php files wil je niet gaan cachen (stel je voor dat iemand ipv sessies cookies gebruikt heeft bij zijn login ding, en je dit er niet goed uitfiltert...)
Of heeft er iemand cijfers waaruit blijkt dat ik niet echt gelijk heb?
Sebsoft - Moodle hosting - programmeerwerk - managed hosting - https://sebsoft.nl
Dit heeft zeker wel zin, applicaties zoals Wordpress (al dan niet met cache plugin) zetten headers zodat een proxy ertussen of de client zelf de request mag cachen. Als je ook de PURGE functie naar je klanten communiceert, is dit zeker een goede oplossing.
Kan overigens ook simpel gebruikt worden om SSL te serveren en zo rekenkracht te besparen op de apache server.
Laatst gewijzigd door ozeik; 01/12/13 om 14:13.
Het is een mooie oplossing, de combinatie Nginx en Apache, maar deze oplossing kan de standaard problemen van verkeerde configuraties in Apache en/of sites niet verhelpen.
De bestaande sites en/of php files en/of Apache configuraties moeten toch eerst "opgeschoond" worden, alvorens een Nginx echt effectief kan zijn.
Het is bovendien het geval dat Nginx eveneens specifieke settings bij installaties van Plesk of Directadmin vereist.
De betreffende configuraties dienen zorgvuldig te gebeuren, alvorens Nginx echt goed kan werken met Plesk of Directadmin.
Echter, als alles goed geconfigureerd is (en dat is niet altijd even eenvoudig), dan kan Nginx een zorgeloze proxy zijn, die bijzonder veel performance improvement oplevert.
De vraag is alleen of dat noodzakelijk is.
De praktijk leert dat het merendeel van de sites te "klein" is en weinig gebaat is bij Nginx, waardoor de installatie van Nginx een onnodige druk op performance oplevert.
De praktijk leert bovendien dat slecht draaiende sites veelal in geringe mate beter gaan presteren met Nginx, indien het onderliggende probleem (bijvoorbeeld slechte code) niet opgelost wordt en Nginx eigenlijk alleen maar extra performance kost, om in de kern de slechte performance vanwege een probleem (slechte code) ietwat te verbeteren.
Kortom, de vraag begint niet bij "is Nginx een goede proxy?", maar zou eigenlijk moeten beginnen met "presteren mijn sites slecht en waarom en wat kan ik eraan doen?".
De zelfstandige vraag "is Nginx een goede proxy?", die vraag kan met een volmondig "JA" beantwoord worden, althans in vele (maar niet alle) situaties.
Tot slot, de nieuwe en/of nieuwste versies van PHP gaan soortgelijke performance enhancement modules standaard implementeren, waardoor vroeg of laat ook de vraag gesteld moet worden of Nginx naast die voormelde (Apache) modules geïntroduceerd moet worden.
Die laatste vraag kan ik ook gedeeltelijk beantwoorden: de (nieuwe) modules zijn goed genoeg, maar Nginx is in bepaalde omstandigheden een beter alternatief.
In conclusie, Nginx is altijd (!) een serieus te overwegen optie.
MvG
Ik zou het niet doen:
- NGINX heeft beperkingen in functionaliteit. Denk aan het ontbreken van .htaccess support. Je klant of site kan daardoor niet zelf mutaties doen via .htaccess.
- Hoewel nginx iets sneller is, heeft nginx als proxy voor Apache in mijn optiek niet zoveel nut. Als nginx dan moet proxy'en naar Apache is dat alleen maar extra overhead. Je eventuele performance gain is derhalve minimaal. Wat iemand hierboven al roept kan het helpen om je performance marginaal te verbeteren, maar de toegevoegde beheerscomplexiteit weegt in mijn optiek niet op tegen die minimale performance verbetering.
Wij gebruiken nginx in hele specifieke setups (Magento), maar dan nginx als primair platform. Daar zit dus geen Apache server achter.

Ik heb Nginx admin (plugin voor cpanel )op een VPS met cpanel.
Dit geeft geen conflicten met de .htacces, echter vermoed ik wel dat deze plugin mijn tmp folder vol schrijft. Als ik de snelheid vergelijk, zie ik wel een verbetering. Nu is de snelheid winst niet wereld schokken. Ik heb dan ook op mijn andere VPS geen nginx meer geinstaleerd.