Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So erstellen Sie einen Lastausgleichsserver basierend auf Centos7+Nginx+Tomcat8

So erstellen Sie einen Lastausgleichsserver basierend auf Centos7+Nginx+Tomcat8

PHPz
PHPznach vorne
2023-05-26 11:43:131561Durchsuche

Nach der manuellen Installation von Nginx ist alles normal und es gibt keine Probleme mit der Konfiguration des virtuellen Hosts und dem Lastausgleich. Die spezifische Konfigurationsdatei lautet wie folgt:

Fügen Sie in der nginx.conf-Datei Folgendes hinzu: include vhost/*.conf, um alle .conf-Dateien in das vhost-Verzeichnis einzufügen, um die Konfiguration in Zukunft zu vereinfachen . Natürlich können Sie sie bei Bedarf einzeln hinzufügen.

Da der Ladedienst ein API-Dienst ist, heißt der Name der Conf-Datei hier api.xxx.com.conf. Die Konfiguration zum Öffnen der Datei lautet wie folgt:

So erstellen Sie einen Lastausgleichsserver basierend auf Centos7+Nginx+Tomcat8

In diesem Fall die IP-Abfragemethode wird nicht verwendet, aber die IP-Abfragemethode ist die usstream-Methode. Für spezifische Hinweise zwischen diesen Methoden können Sie Baidu oder Google verwenden. Es ist zu beachten, dass hier „proxy_pass“ als Name des Upstreams konfiguriert ist. Wenn die IP-Adresse direkt konfiguriert ist, wird kein Lastausgleich erreicht.

Je größer die Zahl, desto höher die Gewichtung, desto größer ist die Wahrscheinlichkeit, dass der Hot-Standby-Server gesichert wird. Wenn also ein Problem mit den ersten beiden Lasten auftritt, wird der Hot-Standby-Server verwendet übernimmt automatisch die Verantwortung für diese Besuche.

Die Konfiguration des Nginx-Lastausgleichskonfigurators ist jetzt abgeschlossen. Wenn es sich jedoch um eine normale URL handelt, kommt es beim Zugriff zu einem Sitzungsverlust. Daher muss zu diesem Zeitpunkt das Problem des Sitzungsverlusts vorliegen Es gibt mehrere Lösungen für dieses Problem, und die andere besteht darin, die gemeinsame Nutzung von Sitzungen zu implementieren Um diese Anforderung zu erfüllen, ist hier der konfigurierte Sitzungsfreigabeserver ein Redis-Speicherdienst, der hauptsächlich das effiziente Lesen und Speichern von Daten gewährleistet. Wenn Sie Redis für die Sitzungsfreigabe verwenden, müssen Sie die folgenden Namen hinzufügen:

So erstellen Sie einen Lastausgleichsserver basierend auf Centos7+Nginx+Tomcat8Diese Pakete unterstützen Tomcat8 ohne Frage: Bezüglich des konkreten Supportstatus anderer Versionen wurden keine relevanten Tests durchgeführt.

Ändern Sie dann die Konfigurationsdatei in Tomcat:

So erstellen Sie einen Lastausgleichsserver basierend auf Centos7+Nginx+Tomcat8 Die hier angezeigten Adressen von 10.0.0.x sind alle im internen Netzwerk verfügbar. Nur der für die Last verantwortliche Server ist direkt verbunden zum externen Netzwerk.

Zu diesem Zeitpunkt können Sie den Tomcat-Server und den Nginx-Server reibungslos starten. Zuvor müssen Sie jedoch zuerst den Nginx-Server starten, da Tomcat sonst möglicherweise nicht gestartet werden kann. Der Nginx-Dienst kann reibungslos gestartet werden

Die drei Konfigurationen lauten wie folgt:

Der in nginx.conf hinzugefügte Referenzinhalt

include vhost/*.conf;

Lastausgleichskonfiguration:

upstream api.xxx.com {
 server 10.0.0.12:8080 weight=5;
 server 10.0.0.15:8081 weight=5 ;
 server 10.0.0.16:8080 weight=5 backup;
}
server {
 listen    80;
 server_name api.xxx.com;
 location /
  {
   proxy_set_header host $host;
   proxy_set_header x-real-ip $remote_addr;
   proxy_set_header x-forwarded-for $remote_addr;
   proxy_pass http://api.xxx.com;
    }
}

Tomcat-Konfiguration

<valve classname="com.radiadesign.catalina.session.redissessionhandlervalve" />
<manager classname="com.radiadesign.catalina.session.redissessionmanager" 
       host="10.0.0.16" 
       port="10000" 
       database="0" 
       maxinactiveinterval="60" />

Das obige ist der detaillierte Inhalt vonSo erstellen Sie einen Lastausgleichsserver basierend auf Centos7+Nginx+Tomcat8. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen