1. Hintergrundeinführung
Nginx (Engine x) ist ein leistungsstarker HTTP- und Reverse-Proxy-Server. Nginx ist ein leichter Webserver/Reverse-Proxy-Server und E-Mail-Proxy-Server. Seine Merkmale sind, dass es weniger Speicher beansprucht und über starke Parallelitätsfähigkeiten verfügt. Tatsächlich sind die Parallelitätsfähigkeiten von Nginx unter Webservern desselben Typs besser geeignet. Zu den Benutzern von Nginx-Websites auf dem chinesischen Festland gehören: Baidu, JD.com, Sina, NetEase. Tencent, Taobao usw.
2. Wissensanalyse
1. Proxyserver
Bezieht sich im Allgemeinen auf die Maschine im LAN, die über den Proxyserver Anfragen an den Server im Internet sendet agiert im Allgemeinen auf der Client-Seite. Ein vollständiger Proxy-Anforderungsprozess besteht darin, dass der Client zunächst eine Verbindung mit dem Proxy-Server herstellt und dann gemäß dem vom Proxy-Server verwendeten Proxy-Protokoll die Herstellung einer Verbindung zum Zielserver oder den Erhalt der angegebenen Ressourcen des Zielservers anfordert. Der Web-Proxy-Server (Proxy) ist die Zwischeneinheit des Netzwerks. Der Proxy befindet sich zwischen dem Web-Client und dem Webserver und übernimmt die Rolle des „Mittlers“. Der HTTP-Proxyserver ist sowohl ein Webserver als auch ein Webclient.
2. Forward-Proxy
Ein Forward-Proxy ist ein Server zwischen dem Client und dem Ursprungsserver. Um Inhalte vom Ursprungsserver zu erhalten, sendet der Client eine Anfrage und gibt das Ziel an ( Ursprungsserver), dann leitet der Proxy die Anfrage an den Ursprungsserver weiter und gibt den erhaltenen Inhalt an den Client zurück. Um den Forward-Proxy nutzen zu können, muss der Client einige spezielle Einstellungen vornehmen.
3. Reverse-Proxy
Reverse-Proxy In der Computerwelt gibt es manchmal eine Grenze für die Fähigkeit eines einzelnen Servers, Client-(Benutzer-)Anfragen zu verarbeiten Dies führt dazu, dass der Server zu stark ausgelastet ist, um Tausende von Benutzeranfragen zu teilen. Diese Server bieten den gleichen Dienst, und Benutzer werden überhaupt keinen Unterschied spüren. Der Server akzeptiert die Anfrage des Clients, verteilt die Anfrage dann zur Verarbeitung an einen bestimmten Server und gibt dann die Antwort des Servers an den Client zurück.
4. Implementierung eines Reverse-Proxys
1) Ein Lastausgleichsgerät ist erforderlich, um Benutzeranfragen zu verteilen und Benutzeranfragen an inaktive Server zu verteilen.
2) Der Server gibt seine zurück eigene Dienste an das Lastausgleichsgerät
3) Der Lastausgleich gibt die Dienste des Servers an den Benutzer zurück
1 Proxy Was ist der Unterschied zwischen Reverse-Proxy
2. Warum Reverse-Proxy verwenden
4 Proxy sind unterschiedlich: Positiv Das durch den Proxy dargestellte Objekt ist der Client und das durch den Reverse-Proxy dargestellte Objekt ist der Server.
Antwort: 2. Erleichtert die Serververteilung und -erweiterung. In der Praxis gibt es eine Grenze für die Fähigkeit eines einzelnen Servers, Client-Anfragen zu verarbeiten. Wenn die Anzahl der Anfragen zu groß ist, ist der Server zu stark ausgelastet. Daher werden mehrere Server verwendet, um die Anforderungsverarbeitung des Benutzers zu teilen Für Benutzer gibt es keinen Unterschied. Dann ist ein Lastausgleichsgerät erforderlich, um Benutzeranforderungen an inaktive Server zu verteilen. Anschließend gibt der Server die Ergebnisse an das Lastausgleichsgerät zurück, und der Lastausgleich gibt sie an den Benutzer zurück. Auf diese Weise müssen Sie beim Hinzufügen/Entfernen eines Servers nur die Lastausgleichsserverliste ändern, ohne die Serversicherheit zu beeinträchtigen. Vermeiden Sie die direkte Offenlegung von IP-Adressen und Ports im Internet und verhindern Sie so, dass Hosts Sicherheitslücken ausnutzen. Die Anzahl der Proxyserver ist begrenzt, was den Sicherheitsschutz komfortabler macht.
5. Referenzen
Baidu, Bücher
Weitere Diskussionen
1. Was sind die Lastausgleichsalgorithmen?
Antwort: Round-Robin-Methode, Zufallsmethode (Random), Quelladress-Hash-Methode (Hash), gewichtete Round-Robin-Methode (Weight Round Robin), gewichtete Zufallsmethode (Weight Random), Methode der minimalen kleinsten Verbindungen.
2. Was bedeutet der Servername in der Konfiguration?
Antwort:
Die server_name-Direktive in Nginx wird hauptsächlich zum Konfigurieren namensbasierter virtueller Hosts verwendet. Die Übereinstimmungsreihenfolge der server_name-Direktive nach dem Empfang der Anfrage ist:
1 , Genauer Servername:
2. Zeichenfolge, die mit * Wildcard beginnt
4. Passender regulärer Ausdruck:
3. Was ist der Unterschied zwischen Reverse Proxy und Load Balancing?
Antwort: Reverse Proxy ist eine Methode zum Lastausgleich. Lassen Sie uns zunächst über Reverse Proxy sprechen. Wenn der Benutzer eine Anfrage stellt, sendet er die Anfrage zuerst an den Proxyserver, und dann fordert der Proxyserver gemäß dem Algorithmus den realen Server an und gibt sie schließlich an den Benutzer zurück. Dieser Ansatz verbessert erstens die Sicherheit; zweitens teilt er Benutzeranfragen über mehrere reale Server und erreicht einen Lastausgleich. Lassen Sie uns noch einmal über den Lastausgleich sprechen. Das Aufkommen des Lastausgleichs besteht darin, den Druck auf einen einzelnen Server durch horizontale Erweiterung so weit wie möglich zu reduzieren. Zu den gängigen Lastausgleichslösungen auf WEB-Ebene gehören Hardware F5, Nginx-Proxy, LVS, Lastausgleichsdienste verschiedener Cloud-Anbieter (z. B. der ELB-Dienst von AWS) usw. Hinter dem Lastausgleich steht in der Regel der Server, der den Dienst tatsächlich bereitstellt. Beispielsweise kann der Datenverkehr über den ELB-Dienst gleichmäßig verteilt werden, wodurch der Druck auf den eigenständigen Server verringert wird.
Weitere technische Artikel zum Thema Nginx finden Sie in der Spalte Nginx-Tutorial, um mehr darüber zu erfahren!
Das obige ist der detaillierte Inhalt vonWas bedeutet Nginx-Reverse-Proxy?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!