In herkömmlichen Webprojekten ist der Umfang der Parallelität gering und Benutzer nutzen ihn weniger. Bei geringer Parallelität können Benutzer also direkt auf den Tomcat-Server zugreifen und der Tomcat-Server sendet dann Nachrichten an den Benutzer zurück.
Natürlich wissen wir, dass wir zur Lösung der Parallelität einen Lastausgleich verwenden können: Das heißt, wir fügen ein paar weitere Tomcat-Server hinzu. Wenn ein Benutzer zu Besuch kommt, kann die Anfrage an einen inaktiven Tomcat-Server gesendet werden.
Aber in diesem Fall könnte es ein Problem geben: das Hochladen von Bildern. Wir haben das Bild auf Tomcat1 hochgeladen. Als wir auf das Bild zugreifen wollten, funktionierte Tomcat1 zufällig, sodass die Zugriffsanforderung an andere Tomcat-Vorgänge übergeben wurde und die Daten zwischen Tomcats nicht synchronisiert wurden wurde nicht gefunden.
Um diese Situation zu lösen, haben wir uns die Lösung „Distributed“ ausgedacht. Wir haben speziell einen Bildserver zum Speichern von Bildern gebaut. Wenn wir also alle Bilder hochladen, werden sie unabhängig davon, welcher Server die Bilder empfängt, auf den Bildserver hochgeladen.
Auf dem Bildserver muss ein http-Server installiert sein, und Sie können Tomcat, Apache oder Nginx verwenden.
Wenn Sie das sehen, fragen Sie sich vielleicht: Da wir uns für einen http-Server entscheiden, warum nicht weiterhin Tomcat, sondern Nginx verwenden?
Die Gründe sind wie folgt: Nginx wird häufig als statischer Inhaltsdienst und Proxyserver (nicht Ihr FQ-Proxy) verwendet und leitet externe Anforderungen direkt an nachfolgende Anwendungsdienste (Tomcat, Django usw.) weiter. , tomcat Es wird eher verwendet, um einen Anwendungscontainer zu erstellen und Java-Web-Apps darin laufen zu lassen. Es entspricht der gleichen Ebene wie jboss, jetty und andere.
Nginx ist ein http-Server. Es handelt sich um einen leistungsstarken HTTP-Server und Reverse-Proxy-Server, der in der Sprache C entwickelt wurde. Nginx ist ein leistungsstarker HTTP-Server/Reverse-Proxy-Server und E-Mail-Proxyserver (IMAP/POP3). Der vom russischen Programmierer Igor Sysoev entwickelte offizielle Nginx-Test kann 50.000 gleichzeitige Verbindungen unterstützen, verbraucht sehr wenig CPU, Speicher und andere Ressourcen und läuft sehr stabil.
Durch das Verständnis von Nginx habe ich eine zusätzliche Technologie gewonnen, die recht einfach und benutzerfreundlich ist. Der Punkt ist, dass es große Leistungsverbesserungen für das System bringen kann.
Weitere technische Artikel zum Thema Nginx finden Sie in der Spalte Nginx-Tutorial, um mehr zu erfahren!
Das obige ist der detaillierte Inhalt vonWarum Nginx verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!