So unterstützen Sie ApacheBench mehrere URLs

So unterstützen Sie ApacheBench mehrere URLs

Da der Standard-AB nur Stresstests für eine einzelne URI unterstützt, was den tatsächlichen Anforderungen nicht entspricht, werden die folgenden Änderungen vorgenommen, um dem AB die Unterstützung mehrerer URLs zu ermöglichen.

1. Laden Sie das Apache httpd-bezogene Quellcodepaket und das Patchpaket für das ab-Tool herunter

wget https://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-1.6.5.tar.gz
wget https://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-util-1.6.1.tar.gz
wget https://mirrors.tuna.tsinghua.edu.cn/apache/httpd/httpd-2.4.37.tar.gz
wget https://github.com/philipgloyne/apachebench-for-multi-url/archive/master.zip

Hinweis: httpd hängt von apr und apr-util ab

2. Kompilieren und installieren Sie apr

tar -zxf apr-1.6.5.tar.gz
CD April-1.6.5
./configure --prefix=/usr/local/apr
machen && machen installieren

3. Kompilieren und installieren Sie apr-util

tar -zxf apr-util-1.6.1.tar.gz
cd apr-util-1.6.1
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
machen && machen installieren

4. Ersetzen Sie die Datei ab.c im httpd-Quellcode

entpacken Sie master.zip
tar -zxf httpd-2.4.37.tar.gz
\cp ./apachhebench-for-multi-url-master/ab.c ./httpd-2.4.37/support/

5. Kompilieren und installieren Sie httpd

cd httpd-2.4.37
./konfigurieren \
  --with-apr=/usr/local/apr \
  --with-apr-util=/usr/local/apr-util \
  --prefix=/usr/local/apache \
  --sysconfdir=/etc/httpd24 \
  --enable-so \
  --enable-ssl \
  --enable-cgi \
  --enable-rewrite \
  --mit-zlib \
  --mit-pcre \
  --mit-mpm=vorverzweigen \
  --enable-modules=die meisten \
  --enable-mpms-shared=alle 

machen && machen installieren

6. Überprüfen Sie die Ergebnisse

#/usr/local/apache/bin/ab -h
Verwendung: /usr/local/apache/bin/ab [Optionen] [http[s]://]Hostname[:Port]/Pfad
Optionen sind:
  -n requests Anzahl der auszuführenden Anfragen
  -c concurrency Anzahl der zu stellenden Mehrfachanfragen
  -t timelimit Sekunden bis zur maximalen Wartezeit auf Antworten
  -b Windowsize Größe des TCP Sende-/Empfangspuffers in Bytes
  -p postfile Datei mit Daten zum POST. Denken Sie auch daran, -T einzustellen.
  -u putfile Datei mit Daten zum PUT. Denken Sie auch daran, -T festzulegen.
  -T Inhaltstyp Inhaltstyp-Header für POSTing, zB.
          „Anwendung/x-www-form-urlencoded“
          Standard ist „Text/Plain“
  -v Ausführlichkeit: Wie viele Informationen zur Fehlerbehebung sollen gedruckt werden?
  -w Ergebnisse in HTML-Tabellen ausdrucken
  -i HEAD statt GET verwenden
  -x Attribute Als Tabellenattribute einzufügende Zeichenfolge
  -y Attribute Zeichenfolge, die als tr-Attribute eingefügt werden soll
  -z Attribute Zeichenfolge, die als td- oder th-Attribute eingefügt werden soll
  -C Attribut Cookie hinzufügen, zB 'Apache=1234. (wiederholbar)
  -H-Attribut Fügt eine beliebige Kopfzeile hinzu, zB „Accept-Encoding: gzip“
          Wird nach allen normalen Kopfzeilen eingefügt. (wiederholbar)
  -A Attribut Fügen Sie Basic WWW Authentication hinzu, die Attribute
          sind ein durch Doppelpunkte getrennter Benutzername und ein Passwort.
  -P attribute Fügen Sie Basic Proxy Authentication hinzu, die Attribute
          sind ein durch Doppelpunkte getrennter Benutzername und ein Passwort.
  -X proxy:port Zu verwendender Proxyserver und Portnummer
  -V Versionsnummer drucken und beenden
  -k HTTP-KeepAlive-Funktion verwenden
  -d Tabelle mit bereitgestellten Perzentile nicht anzeigen.
  -S Keine Konfidenzschätzer und Warnungen anzeigen.
  -g Dateiname Gibt die gesammelten Daten in eine Datei im Gnuplot-Format aus.
  -e Dateiname Ausgabe-CSV-Datei mit den bereitgestellten Prozentsätzen
  -r Nicht beenden, wenn beim Socket-Empfang Fehler auftreten.
  -h Nutzungsinformationen anzeigen (diese Nachricht)
  -L Dateinamen der URL-Liste verwenden, z. B. url.txt
  -Z ciphersuite SSL/TLS-Chiffre-Suite angeben (siehe OpenSSL-Chiffren)
  -f Protokoll SSL/TLS-Protokoll angeben (SSL2, SSL3, TLS1 oder ALL)

Sie können sehen, dass ab den Parameter -L bereits unterstützt (die dritte Zeile von unten in den obigen Hilfeinformationen), und Sie sind fertig.

Dies ist das Ende dieses Artikels darüber, wie ApacheBench Multi-URL-Unterstützung erhält. Weitere Informationen zur Multi-URL-Unterstützung von ApacheBench finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Implementierungsprinzip und Nutzungsanalyse des Apache Bench-Stresstest-Tools
  • So implementieren Sie Web-Stresstests mit Apache Bench
  • So installieren Sie Apachebench separat in einer CentOS-Umgebung

<<:  Tutorial zu HTML-Formular-Tags (4):

>>:  Die Rolle und Öffnung des MySQL-Protokolls für langsame Abfragen

Artikel empfehlen

Beispielcode zur Realisierung des Ladeeffekts der B-Station mit CSS+SVG

Schwierigkeit Erstellung von zwei Masken für SVG-...

Schritte zur Einführung von PWA in ein Vue-Projekt

Inhaltsverzeichnis 1. Abhängigkeiten installieren...

Einführung in das Fokuselement document.activeELEment in JavaScript

Inhaltsverzeichnis 1. Der Fokus liegt standardmäß...

Details zur Verwendung der JS-Tag-Syntax

Inhaltsverzeichnis 1. Einführung in Label-Anweisu...

Einführung in die Verschachtelungsregeln von HTML-Tags

Es gibt viele XHTML-Tags: div, ul, li, dl, dt, dd...

HTML-Tabellen-Tag-Tutorial (19): Zeilen-Tag

Die Attribute des <TR>-Tags werden verwende...

Detaillierte Erläuterung der Anwendungsszenarien von Filtern in Vue

filter werden im Allgemeinen verwendet, um bestim...

Schritte und Fallstricke beim Upgrade von Linux MySQL 5.5 auf MySQL 5.7

Inhaltsverzeichnis Linux MySQL 5.5 auf MySQL 5.7 ...

MySQL-Datenbank implementiert MMM-Hochverfügbarkeitsclusterarchitektur

Konzept MMM (Master-Master-Replikationsmanager fü...

So stellen Sie ein Linux-System automatisch mit PXE bereit

Inhaltsverzeichnis Hintergrund DHCP konfigurieren...