Könnte jemand bitte die Vor- und Nachteile bei der Verwendung von WSGI VS WSGI mit Nginx erläutern.
Momentan baue ich einen Produktionsserver für die Django= Website auf, den ich vorbereitet habe, aber nicht entscheiden kann, ob ich mich für WSGI oder uWSGI entscheiden soll. Könnten Sie bitte im Detail erläutern, was die einzelnen Konfigurationen unterscheidet? Konfiguration sollte am besten skalieren?
Danke im Voraus
Ok, Leute, diese Verwirrung ist auf den Mangel an Details aus verschiedenen Quellen zurückzuführen, auf die Benennung dieser Protokolle und auf das, was WSGI eigentlich ist.
Zusammenfassung:
Im Allgemeinen ist es am besten, Python in einem separaten Prozess von Ihrem Hauptwebserver auszuführen. Auf diese Weise kann der Webserver viele kleine Threads haben, die sehr schnell statischen Inhalt bereitstellen, während Ihre separaten Python -Prozesse groß und schwer sind und jeder seinen eigenen Python -Interpreter ausführt. So einfach WSGI
ist schlecht, weil es jeden einzelnen Ihrer Nginx-Threads mit einem großen Python -Interpreter aufbläht. Die Verwendung von flup
oder gunicorn
oder uWSGI
hinter nginx
ist viel besser, da dadurch Nginx für die einfache Bereitstellung von Inhalten frei wird und Sie auswählen können, wie viele kleine Lichtquellen angezeigt werden sollen nginx-Threads werden ausgeführt, unabhängig davon, wie viele schwere Python Threads Sie aufrufen, um dynamischen Inhalt bereitzustellen. Die Leute scheinen im Moment sehr zufrieden mit gunicorn
zu sein, aber jede dieser drei Optionen sollte gut funktionieren.
In Zukunft können Sie auch Python auf einen anderen Server verschieben, wenn die Last ernst wird.
Ich halte das hier http://flask.pocoo.org/docs/deploying/uwsgi/ für eine gute Antwort, um die Verwirrung zu beseitigen. Die Frage ist nicht dumm, passiert jedem, der die beiden Begriffe sieht und keine vorherigen Informationen darüber hat, wie Dinge außerhalb der mod_PHP-Welt funktionieren (zum Beispiel nichts gegen PHP oder Leute).
Die Site ist gut geeignet, um in der Praxis zu erklären, was benötigt wird und was der Unterschied ist, sowie ein gutes Bereitstellungsbeispiel für Nginx.
Dieser Blog-Beitrag ist ein sehr detaillierter Vergleich von vielen Python WSGI-Servern, mit einer Zusammenfassung und einigen Empfehlungen am Ende.