Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So optimieren Sie die Reaktionszeit und den Durchsatz des VPS-Servers mit NGINX und PM2

So optimieren Sie die Reaktionszeit und den Durchsatz des VPS-Servers mit NGINX und PM2

PHPz
PHPzOriginal
2023-09-27 08:45:151232Durchsuche

So optimieren Sie die Reaktionszeit und den Durchsatz des VPS-Servers mit NGINX und PM2

Nachfolgend finden Sie einen Artikel darüber, wie Sie NGINX und PM2 verwenden, um die Antwortzeit und den Durchsatz Ihres VPS-Servers zu optimieren:

Titel: So verwenden Sie NGINX und PM2, um die Antwortzeit und den Durchsatz Ihres VPS-Servers zu optimieren

Übersicht:
In modernen Internetanwendungsszenarien ist die Verbesserung der Serverantwortzeit und des Serverdurchsatzes eine Herausforderung, der sich jeder Entwickler stellen muss. NGINX und PM2 sind zwei leistungsstarke Tools, mit denen wir die Serverleistung einfach optimieren können. In diesem Artikel wird detailliert beschrieben, wie NGINX und PM2 zur Optimierung der Antwortzeit und des Durchsatzes des VPS-Servers verwendet werden, und es werden spezifische Codebeispiele gegeben.

1. Installation und Konfiguration von NGINX:

  1. Installation von NGINX:
    Die Installation von NGINX auf einem VPS-Server ist sehr einfach und kann mit Paketverwaltungstools (wie apt, yum usw.) installiert werden. Spezifische Installationsschritte finden Sie in der offiziellen NGINX-Dokumentation.
  2. NGINX konfigurieren:
    Die Konfigurationsdatei von NGINX befindet sich in /etc/nginx/nginx.conf. In dieser Datei kann die Leistung des Servers optimiert werden. Im Folgenden sind einige häufig verwendete Konfigurationselemente aufgeführt:

    • worker_processes: Geben Sie die Anzahl der von NGINX verwendeten Worker-Prozesse an. Es wird allgemein empfohlen, sie auf die Anzahl der CPU-Kerne des Servers festzulegen.
    • worker_connections: Gibt die Anzahl gleichzeitiger Verbindungen an, die jeder Arbeitsprozess verarbeiten kann. Dieser Wert kann entsprechend der Serverkonfiguration angepasst werden. Generell wird empfohlen, ihn auf die maximal unterstützte Anzahl von Verbindungen einzustellen.
    • Datei senden: Das Aktivieren dieser Option kann die Effizienz der Dateiübertragung verbessern.
    • keepalive_timeout: Geben Sie eine Zeitüberschreitung für eine lange Verbindung an, wodurch die Kosten für das Herstellen und Schließen von Verbindungen zwischen dem Client und dem Server gesenkt werden können.

    Die Beispielkonfigurationsdatei lautet wie folgt:

     worker_processes  4;
     
     events {
         worker_connections  1024;
     }
     
     http {
         ...
         sendfile            on;
         keepalive_timeout   65;
         ...
     }

2. Installation und Konfiguration von PM2:

  1. Installation von PM2:
    PM2 ist ein Tool zur Verwaltung von Node.js-Anwendungen und kann uns beim Lastausgleich helfen und automatische Neustartfunktionen. Verwenden Sie den folgenden Befehl, um PM2 zu installieren:

     npm install pm2 -g
  2. PM2 konfigurieren: Die Konfigurationsdatei von
    PM2 ist economy.config.js. In dieser Datei können Sie die Parameter der Node.js-Anwendung konfigurieren, die gestartet werden muss. Das Folgende ist ein einfaches Konfigurationsbeispiel:

     module.exports = {
       apps : [{
         name: 'app',
         script: 'app.js',
         instances: 'max',
         exec_mode: 'cluster',
         autorestart: true,
         watch: false,
         max_memory_restart: '1G',
         env: {
           NODE_ENV: 'production'
         }
       }]
     };
    • Name: Anwendungsname
    • Skript: Eintragsdateipfad der Anwendung
    • Instanzen: Die Anzahl der gestarteten Instanzen, auf „Max“ eingestellt, um sie automatisch entsprechend der Anzahl der CPU-Kerne zuzuweisen der Maschine
    • exec_mode: Ausführungsmodus, auf Cluster eingestellt, um einen Lastausgleich zu erreichen
    • autorestart: Auf „true“ setzen, um den automatischen Neustart zu aktivieren
    • watch: Auf „false“ setzen, um die Überwachung von Dateiänderungen auszuschalten
    • max_memory_restart: Legen Sie die maximale Speichernutzung fest jeder Instanz, die diesen Wert überschreitet. Die Instanz wird automatisch neu gestartet, wenn der Wert erreicht ist.
    • env: Umgebungsvariable der Node.js-Anwendung festlegen.

3. Kombinierte Verwendung von NGINX und PM2:

  1. Konfigurieren NGINX-Reverse-Proxy:
    Konfigurieren Sie NGINX als Reverse-Proxy, leiten Sie die Anfrage an die von PM2 gestartete Node.js-Anwendung weiter. Das Folgende ist eine Beispielkonfiguration:

     server {
         listen   80;
         server_name  example.com;
     
         location / {
             proxy_pass http://localhost:3000;
             proxy_http_version 1.1;
             proxy_set_header Upgrade $http_upgrade;
             proxy_set_header Connection 'upgrade';
             proxy_set_header Host $host;
             proxy_cache_bypass $http_upgrade;
         }
     }
    • listen: Geben Sie die Portnummer an, auf die der Server lauscht.
    • Servername: Geben Sie den gebundenen Domänennamen oder die IP-Adresse an.
    • location/: Geben Sie die Regeln für den Anforderungsabgleich und die Proxy-Konfiguration an.
  2. Node.js-Anwendungen starten:
    Node.js-Anwendungen mit PM2 starten. Das Folgende ist ein Beispiel für einen Startbefehl:

     pm2 start ecosystem.config.js

    Nachdem der Befehl ausgeführt wurde, schließt PM2 den Start der Anwendung automatisch ab und führt einen Lastausgleich und einen automatischen Neustart gemäß den Parametern in der Konfigurationsdatei durch.

Fazit:
In diesem Artikel wird erläutert, wie Sie NGINX und PM2 verwenden, um die Antwortzeit und den Durchsatz des VPS-Servers zu optimieren. Durch die entsprechende Anpassung der Konfigurationsparameter von NGINX und die Verwendung von PM2 für den Lastausgleich und den automatischen Neustart können die Leistung und Stabilität des Servers erheblich verbessert werden. Ich hoffe, dass dieser Artikel für Entwickler hilfreich sein kann, die auf Schwierigkeiten bei der Serveroptimierung stoßen.

Das obige ist der detaillierte Inhalt vonSo optimieren Sie die Reaktionszeit und den Durchsatz des VPS-Servers mit NGINX und PM2. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn