Apache + mod_wsgi vs nginx + gunicorn
Möchte ich für die Bereitstellung einer django-site (es ist die open-source-edx-code auf github).
Ich bin konfrontiert mit der Wahl zwischen der Verwendung
- Apache mit mod_wsgi
- nginx mit gunicorn
Benutzt habe ich den Apache mit mod_wsgi und es ist kühl genug, aber ich habe keine Erfahrung mit der zweiten option.
Welche dieser wäre eine bessere option in Bezug auf die Geschwindigkeit und auch in gewissem Umfang, Benutzerfreundlichkeit?
NB: ich brauchen würde, um zwei verschiedene django-Websites sagen, der port 80 und 81 und der Zugang zu Ihnen aus zwei verschiedenen Subdomänen.
- Apache mit gunicorn. Ihr webserver sollte ein pure-and-simple HTTP-proxy, und sollte nicht wissen, etwas über gunicorn - alle apache hat, wird die port number(s) proxy. Ihre app-Server sollte nicht wissen über den anderen, oder, dass Sie Leben behing ein HTTP-reverse-proxy. Apache über nginx ist rein, weil mod_proxy_http hat docs, und nginx... naja, ehrlich gesagt, die docs sind beschissen wo es Sie gibt. Alle docs, die Sie finden, sind wahrscheinlich veraltet. (Ich weiß wirklich nicht, was der Popularität.)
- Oh, aber das ist ein Urteil Anruf, würde ich nur die Frage schließen, werden Sie nicht bekommen eine inhaltliche Antwort, ohne dass eine Flamme Krieg, an welchem Punkt, die Frage wird geschlossen sowieso.
- Sie könnten das nützlich finden, digitalocean.com/community/tutorials/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nginx ist eine wirklich leichte und einfach zu bedienende Lösung und zusammen mit gunicorn es erlaubt uns, um eine wsgi-Anwendung und auf einfache Weise skalieren.
Nginx ist besser bei der Bearbeitung der Anfragen, da Sie nicht laichen einen neuen Prozess für jede Anforderung im Gegensatz zu Apache.
Ich geschrieben habe eine Antwort, wie die Bereitstellung von django mit nginx für eine Verwandte Frage:
Die Bereitstellung von Django Projekt mit Gunicorn und nginx
Ich habe gute Erfahrungen mit nginx und gunicorn. Sie arbeiten groß, wenn endlich habe ich alle Einstellungen richtig und habe es ausgeführt.
Für nginx und gunicorn Sie sind:
Ich gesehen habe, ein tutorial für apache + mod_wsgi und es scheint so viel einfacher einzurichten.
Gut,die paar Millisekunden bekommen Sie mit Nginx wird nicht eine hudge Unterschied bezüglich der Zeit, die andere Prozesse nehmen. Nginx kann sparen RAM, aber es würde nur einen großen Unterschied auf Servern mit wenig RAM. Für konkrete Anwendungen auf der big-website könnte es einige weitere Unterschiede, aber diese werden ein Experte Affäre dann.
Den wirklichen Unterschied für die meisten ist wohl die Leichtigkeit des Lernens. Ich finde nicht Apache-spezifisch schwer zu bedienen und der doc ist sauber. Allerdings sind die meisten Python-tutorials, die ich fand, sind über die Verwendung von Nginx mit Gunicorn.
Wenn Sie bereits wissen, Apache, wäre es wohl eher gleich auf den Punkt, es zu benutzen, es sei denn, Sie wollen lernen, Nginx zu verbessern Sie Ihren Lebenslauf.