2016-04-18 6 views
0

Ich habe viele Artikel gelesen, dass der Hauptvorteil der Verwendung von Nginx als Webserver ist, dass es Sie Leistung, vor allem, weil es schnell mit statischen Daten arbeitet.Nginx als Webserver oder Node JS mit Cloudfront CDN

Ich verwende bereits Cloudfront CDN (Amazon Services) zur Befestigung der statischen Daten.

Also, habe ich irgendwelche echten Gründe, Nginx über Knoten JS als Webserver zu bevorzugen?

+0

Können Sie das konkretisieren über die sein Problem. Es gibt wirklich gute Gründe, Nginx über Knoten oder Knoten über Nginx zu verwenden, aber es ist alles problemabhängig. Das Problem, das du beschreibst, ist fast subjektiv, weshalb du vielleicht Stimmen abbekommst. – Harry

+0

@Harry Das Programm ist ein soziales Netzwerk wie Facebook & Linkedin, aber mit einem Plan von 100k thouthands Benutzer + - –

+4

Das ist nicht das Problem. 100k Benutzer können mit allem bedient werden, wählen Sie Ihren Favoriten, den einen, der Ihnen mehr Funktionen zum Testen usw. gibt. Es klingt, als ob Sie einen App Server benötigen, verwenden Sie Knoten und verwenden Sie es, statische Dateien zu liefern, bis Sie ein Problem sehen. Verkomplizieren Sie Dinge nicht ohne die 100k Benutzer, weil das, was Sie denken, das Leistungsproblem wahrscheinlich nicht sein wird. Konzentrieren Sie sich darauf, die Benutzer zu bekommen, ohne sie ist nichts anderes wichtig. – Harry

Antwort

3

Kein Vorteil in Ihrem Fall. Die Wahl eines CDN, um Ihren statischen Inhalt zu liefern, war eine großartige Idee. (CDNs dienen nicht nur zur Bereitstellung Ihrer Inhalte, sondern speichern sie auch in ihrem Netzwerk, so dass die meisten Länder die gleiche Leistung erzielen.) Dies entlastet Ihren NodeJS-Anwendungsserver erheblich.

Jedoch kann NGINX in Verbindung mit einem Anwendungsserver wie NodeJS sehr nützlich sein. Die meisten Leute benutzen NGINX als Reverse-Proxy, das heißt, es sitzt vor einem Cluster von Anwendungsservern und verteilt die Verkehrslast gleichmäßig.

Weitere coole Tricks sind die Hotswapping NGINX-Konfiguration für Blue Green-Bereitstellungen; Sie müssen Ihren Dienst also nie für ein Upgrade anhalten.

Wenn Sie das Geld und die Zeit haben, sind diese Tricks einen Besuch wert.

0

Es hängt davon ab, was Sie glauben, "echte Gründe" sind.

Ich glaube, der wichtigste Grund beinhaltet Sicherheitsprobleme - Nginx ist ein dedizierter Webserver, während Node.js eine JavaScript-Laufzeit ist, daher konzentriert sich Nginx auf Serving-bezogene Probleme, während Nodejs eingebauter Server nur ein zusätzliches Dienstprogramm ist nicht so viel Aufmerksamkeit bekommen. Ein weiterer Vorteil einer solchen Bereitstellung ist die Konfigurierbarkeit. Sie können beispielsweise Ihre Knotenzeiten praktisch ohne Ausfallzeiten (da Sie zwei nodejs-Instanzen gleichzeitig ausführen können) oder den Datenverkehr langsam auf Ihren neuen Server verschieben.

Sie auch einen Blick auf nehmen: auch Using Node.js only vs. using Node.js with Apache/Nginx und http://blog.modulus.io/supercharge-your-nodejs-applications-with-nginx

Vielleicht haben Sie Interesse an einer allgemeineren Frage, in Bezug auf Anwendungsservern vs Webserver: What is the difference between application server and web server?