Parallelitätsleistungstest Apache Nginx
Parallelitätsleistungstest
1 Testzweck
Analysieren Sie anhand der Ergebnisse der Parallelitätsleistungstests von Apache und Nginx die jeweiligen Vor- und Nachteile ihrer Parallelitätsmodelle.
Zu den Leistungsbewertungselementen gehören: RPS (pro Sekunde verarbeitete Anforderungen), CPU-Auslastung, Speichernutzung und maximale Anzahl von Parallelitäten.
Wählen Sie basierend auf den Vor- und Nachteilen der Parallelitätsmodelle Apache und Nginx ein geeignetes Parallelitätsmodell-Framework aus.
2 Testumgebung
1. Hardwareumgebung
Server: Interl-Server Borad
8-Kern-CPU, 2G Speicher, 160G Festplatte,
Client: Gleich wie Serverumgebung
2. Betriebssystem
Betriebssystem: Red Hat EnterPrise Kernel Linux 2.6.18
Client: Red Hat EnterPrise Kernel Linux 2.6.9
3. Netzwerktopologie
Der Server und der Client sind über ein 100 m langes Netzwerkkabel
mit einem Switch verbunden
Server-IP-Adresse: 192.168.192.201
Client-IP-Adresse: 192.168.192.200
3 Testmethoden
3.1 Testtools
Apache 2.2.10 wird mit einer Toolbench
geliefert
Webbench 1.5
3.2 Testschritte
1. Inspektion und Installation der Ausrüstung
Überprüfen Sie, ob alle Systemgeräte intakt und verfügbar sind, und verbinden Sie die Geräte mit dem Host.
2. Überprüfung der Netzwerkverbindung
Der Server und der Client sind über ein 100-M-Netzwerkkabel
mit demselben Switch verbunden
3. Vorbereitung des Betriebssystems
Starten Sie Red Hat Enterprise
Installieren Sie den Maustreiber und konfigurieren Sie das Netzwerk
4. Laden Sie
herunter, installieren Sie es und konfigurieren Sie es
Referenzanhang
5. Apache-Test
Führen Sie Apache aus
cd /usr/local/apache/bin
./apachectl -k start
Der Test-Apache-Dienst wurde erfolgreich gestartet
Besuchen Sie unter Windows: http://192.168.192.201/index.html
Die Testseite „Es funktioniert!“ erscheint
Führen Sie das Apche-Bench-Testprogramm aus
cd /usr/local/apache/bin
./ab -c Clients -n Anfragen http://192.168.192.201/index.html
Führen Sie das Webbench-Testprogramm
aus
cd /usr/local/bin
webbench -c Clients -t time http://192.168.192.200/index.html
(Clients stellt die Anzahl der Benutzer dar, Requests stellt die Anzahl der Parallelität dar)
6. Nginx-Test
Führen Sie nginx
aus
./nginx
Test-Nginx-Dienst erfolgreich gestartet
Besuchen Sie unter Windows: http://192.168.192.201/index.html
Die Seite „Willkommen bei Nginx!“ erscheint
Um die Vergleichbarkeit der Ergebnisse zu testen, kopieren Sie die Apache-Testseite index.html, um die Nignx-Testseite
abzudecken
Führen Sie das Apche-Bench-Testprogramm aus
cd /usr/local/apache/bin
./ab -c Clients -n Anfragen http://192.168.192.201/index.html
Führen Sie das Webbech-Testprogramm
aus
cd /usr/local/bin
webbench -c Clients -t time http://192.168.192.200/index.html
7. Notieren Sie die Testergebnisse
Erfassen Sie die Ergebnisse der Prüfstandtests: Für Tests benötigte Zeit (Testzeit, Einheit: Sekunden), Anfragen pro Sekunde (Anzahl der pro Sekunde verarbeiteten Anfragen)
Zeichnen Sie die Ergebnisse des Webbench-Tests auf: Geschwindigkeit (Anzahl der pro Minute verarbeiteten Anforderungen, um mit Apache Bench konsistent zu sein, wird *30 in die Anzahl der pro Sekunde verarbeiteten Anforderungen während der Aufzeichnung umgewandelt), die Laufzeit wird entsprechend angegeben Betriebsbefehl -t, der Standardwert ist 30 Sekunden
Befehl zur Überprüfung der CPU-Auslastung: top
Speichernutzungsbefehl: kostenlos
4 Testplan
Nginx-Single-Thread-Test
Nginx-Multithread-Tests
Test des Apache-Worker-Modus
Test des Apache-Prefork-Modus
5 Datenzusammenfassung
Testkonfiguration: Apache-Konfigurationsreferenz 7.4, Nginx-Konfigurationsreferenz 7.5
Originaldaten finden Sie in der Originaldaten-XLS
Die Daten sind wie folgt zusammengefasst:
Server-Client RPS
Leerlauffrei (gebraucht) Leerlauffrei (gebraucht)
Nginx-Einzelprozess 79 102526K 82 185196K 20757
Nginx-Multiprozess 81 395444K 85 177405K 20861
Apahce-Vorgabel 38 154380K 75 178215K 30181
Apache-Worker 41 81506K 81 183166K 24669
6 Testfazit
7 Anhang
7.1 Webbench-Installation
Schritte Betrieb
Laden Sie das Installationspaket wget http://blog.s135.com/soft/linux/webbench/webbench-1.5.tar.gz
herunterEntpacken Sie tar zxvf webbench-1.5.tar.gz
Kompilieren Sie CD Webbench-1.5
machen
Installation make install
7.2 Apache-Installation
Schritt-Bedienungsbeschreibung
Laden Sie das Installationspaket herunter. Laden Sie das Softwarepaket httpd-2.2.10.tar.gz unter http://www.apache.org herunter. Die neueste stabile Version
Entpacken Sie tar xvzf httpd-2.2.10.tar.gz
Kompilierungsoptionen ./configure --prefix=/usr/local/apache Installationspfad
--enable-module=shared Gemeinsamer Speicher zwischen Prozessen
--enable-module=rewrite
--enable-threads Thread-Unterstützung (gültig im Worker-Modus)
--enable-shared=max
--with-mpm=worker Auswahl des Worker-Modus
--with-mpm=prefork Auswahl des Prefork-Modus
--with-mpm=Ereignis-E/A-Multiplexing-Unterstützung
Kompilieren durchführen
Installiere make install
7.3 Nginx-Installation
Schritt-Bedienungsbeschreibung
Laden Sie das Installationspaket herunter. Laden Sie das Softwarepaket nginx-0.7.24.tar.gz unter http://sysoev.ru/nginx/download.html herunter. Die neueste stabile Version
Entpacken Sie tar xvzf ginx-0.7.24.tar.gz
Kompilieren Sie ./configure --prefix=/usr/local/ Installationspfad
Kompilieren durchführen
Installiere make install
7.4 Apache-Konfiguration
Apache-Konfigurationsbefehl:
cd /usr/local/apache/conf
vi http.conf
Parameterkonfiguration im Prefork-Modus:
Konfiguration Apache
Prefork-Modus --with-mpm=prefork
Anzahl der beim Systemstart erstellten Prozesse StartServer 128 //Um mit Nginx vergleichbar zu sein
Anzahl der aktiven untergeordneten Prozesse ServerLimit 50000
Anzahl der während des Lebenszyklus des untergeordneten Prozesses verarbeiteten Verbindungen MaxRequestsPerChild 0 // 0 bedeutet keine Begrenzung
Maximale Anzahl untergeordneter Prozesse MaxClients 50000
Listening-Port Listen 80
Timeout Timeout 300
keepAlive KeepAlive On
Sendfile EnableSendfile on
Konfiguration des Worker-Modus:
Implementierung des Konfigurationselements
Worker-Modus --with-mpm=worker
Anzahl der beim Systemstart StartServers erstellten Prozesse 32
Anzahl der aktiven untergeordneten Prozesse ServerLimit 7812
Maximale Anzahl von Threads MaxClients 500000
Anzahl der untergeordneten Prozessthreads ThreadsPerChild 64 //Gleich dem von Apache zulässigen Maximalwert
Listening-Port Listen 80
Timeout Timeout 300
keepAlive KeepAlive On
Sendfile EnableSendfile on
7.5 Nginx-Konfiguration
Nginx-Konfigurationsbefehl:
cd /usr/local/nginx/conf
vi nginx.conf
Nginx-Konfigurationsbefehl testen:
./nginx –t
Hauptkonfiguration eines einzelnen Worker-Prozesses:
Konfiguration Nginx
Prozess worker_processes 1;
Anzahl der vom Prozess verarbeiteten Verbindungen worker_connections 102400;
Abhörender Portserver {
Hören Sie 80;
}
Sendfile sendfile on;
E/A-Multiplexing-Methode verwendet epoll;
Multi-Worker-Konfiguration:
Konfiguration Nginx
Prozess worker_processes 16;
Anzahl der vom Prozess verarbeiteten Verbindungen worker_connections 102400;
Abhörender Portserver {
Hören Sie 80;
}
Sendfile sendfile on;
E/A-Multiplexing-Methode verwendet Epoll;
Das Obige stellt den gleichzeitigen Leistungstest von Apache Nginx vor, einschließlich des Inhalts. Ich hoffe, dass er für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



So konfigurieren Sie einen Nginx -Domänennamen auf einem Cloud -Server: Erstellen Sie einen Datensatz, der auf die öffentliche IP -Adresse des Cloud -Servers zeigt. Fügen Sie virtuelle Hostblöcke in die NGINX -Konfigurationsdatei hinzu, wobei der Hörport, Domänenname und das Root -Verzeichnis der Website angegeben werden. Starten Sie Nginx neu, um die Änderungen anzuwenden. Greifen Sie auf die Konfiguration des Domänennamens zu. Weitere Hinweise: Installieren Sie das SSL -Zertifikat, um HTTPS zu aktivieren, sicherzustellen, dass die Firewall den Verkehr von Port 80 ermöglicht, und warten Sie, bis die DNS -Auflösung wirksam wird.

Das Starten eines Nginx-Servers erfordert unterschiedliche Schritte gemäß verschiedenen Betriebssystemen: Linux/UNIX-System: Installieren Sie das NGINX-Paket (z. B. mit APT-Get oder Yum). Verwenden Sie SystemCTL, um einen Nginx -Dienst zu starten (z. B. sudo systemctl start nginx). Windows -System: Laden Sie Windows -Binärdateien herunter und installieren Sie sie. Starten Sie Nginx mit der ausführbaren Datei nginx.exe (z. B. nginx.exe -c conf \ nginx.conf). Unabhängig davon, welches Betriebssystem Sie verwenden, können Sie auf die Server -IP zugreifen

Die Methoden, die die Nginx -Version abfragen können, sind: Verwenden Sie den Befehl nginx -v; Zeigen Sie die Versionsrichtlinie in der Datei nginx.conf an. Öffnen Sie die Nginx -Fehlerseite und sehen Sie sich den Seitentitel an.

So bestätigen Sie, ob Nginx gestartet wird: 1. Verwenden Sie die Befehlszeile: SystemCTL Status Nginx (Linux/Unix), Netstat -ano | FindStr 80 (Windows); 2. Überprüfen Sie, ob Port 80 geöffnet ist; 3. Überprüfen Sie die Nginx -Startmeldung im Systemprotokoll. 4. Verwenden Sie Tools von Drittanbietern wie Nagios, Zabbix und Icinga.

Es gibt viele Möglichkeiten, CentOS -Systemfehler zu lösen. Hier sind einige gängige Schritte und Techniken: 1. Überprüfen Sie die Protokolldatei/VAR/Protokoll/Meldungen: Systemprotokoll, das verschiedene Systemereignisse enthält. /var/log/sichern: Sicherheitsbezogene Protokolle wie SSH-Anmeldeversuche. /var/log/httpd/error_log: Wenn Sie den Apache -Server verwenden, gibt es hier eine Fehlermeldung. 2. Verwenden Sie das diagnostische Tool DMESG: Zeigen Sie den Inhalt des Kernel -Ringpuffer an, wodurch die Hardware- und Treiberfragen versteht

Die Bereitstellung eines Zookeeper-Clusters in einem CentOS-System erfordert die folgenden Schritte: Die Umgebung ist bereit, die Java-Laufzeitumgebung zu installieren: Verwenden Sie den folgenden Befehl, um das Java 8-Entwicklungs-Kit zu installieren: Sudoyumininstalljava-1.8.0-openjdk-Devel-Download Zookeeper: Download für Centos (wie z. Verwenden Sie den Befehl wGet, um Zookeeper-3.8.x durch die tatsächliche Versionsnummer herunterzuladen und zu ersetzen: Wgethttps: //downloads.apache.or

Sie können den Namen des Docker -Containers abfragen, indem Sie den Schritten folgen: Alle Container auflisten (Docker PS). Filtern Sie die Containerliste (unter Verwendung des GREP -Befehls). Ruft den Containernamen ab (befindet sich in der Spalte "Namen").

Um Nginx dazu zu bringen, Apache auszuführen, müssen Sie: 1. Installieren von Nginx und Apache; 2. Konfigurieren Sie den Nginx -Agenten; 3.. Starten Sie Nginx und Apache; 4. Testen Sie die Konfiguration, um sicherzustellen, dass Sie den Apache -Inhalt nach dem Zugriff auf den Domänennamen sehen können. Darüber hinaus müssen Sie auf andere Angelegenheiten wie die Anpassung der Portnummer, die virtuelle Hostkonfiguration und die SSL/TLS -Einstellungen achten.
