Luet Testen Webserver mat Belagerung Benchmarking Tool


Wësse wéi vill Traffic Äre Webserver kann handhaben wann ënner Stress ass wesentlech fir d'Zukunft vun Ärer Websäit oder Applikatioun ze plangen. Andeems Dir Tool genannt Belagerung benotzt, kënnt Dir e Laaschttest op Ärem Server lafen a kucken wéi Äre System ënner verschiddenen Ëmstänn funktionnéiert.

Dir kënnt d'Belagerung benotzen fir d'Quantitéit vun den iwwerdroenen Donnéeën ze evaluéieren, d'Äntwertzäit, d'Transaktiounsrate, d'Duerchschnëtt, d'Konkurrenz a wéivill Mol de Server Äntwerten zréckginn huet. D'Tool huet dräi Modi, an deenen et funktionnéiert - Regressioun, Internet Simulatioun a brute Kraaft.

Wichteg: Belagerung soll nëmme géint Servere lafen déi Dir besëtzt oder op esou Dir hutt explizit Erlaabnis fir ze testen. A verschiddene Länner kann d'Belagerung op onerlaabten Websäiten als Verbriechen ugesi ginn.

Installéiere Siege HTTP Load Testing Utility op Linux

Belagerung ass Multi-Plattform a kann ënner Ubuntu/Debian an CentOS/RHEL Verdeelunge mat de folgende Kommandoen installéiert ginn.

Fir Siege ënner Debin/Ubuntu z'installéieren, kënnt Dir lafen:

$ sudo apt install siege

Fir CentOS/RHEL, musst Dir de Repository installéieren an aktivéieren fir Belagerung ze installéieren mat:

# yum install epel-release
# yum install siege

Alternativ kënnt Dir d'Belagerung aus der Quell bauen. Fir dësen Zweck musst Dir Build-essentiell an Entwécklungspäck installéiert hunn.

$ sudo apt install build-essential       #Ubuntu/Debian
# yum groupinstall 'Development Tools'   #CentOS/RHEL

Da kënnt Dir d'Belagerung mat wget Kommando eroflueden an aus Quellen installéieren wéi gewisen.

$ wget http://download.joedog.org/siege/siege-latest.tar.gz
$ tar -zxvf siege-latest.tar.gz
$ cd siege-*/
$ sudo ./configure --prefix=/usr/local --with-ssl=/usr/bin/openssl
$ sudo make && make install

Konfiguréieren Siege HTTP Load Testing Utility am Linux

Wann Dir d'Installatioun ofgeschloss hutt, kënnt Dir Är Belagerungskonfiguratiounsdatei upassen. Et ass an /etc/siege/siegerc. Am Fall wou Dir decidéiert hutt de Package aus der Quell ze bauen, musst Dir lafen:

$ sudo siege.config

Dëst wäert siege.conf Datei generéieren an Ärem Benotzerheem ~/.siege/siege.conf.

Den Inhalt vun der Datei soll esou ausgesinn. Notéiert datt ech d'Logdatei an d'Zäitdirektiven ofkommentéieren:

# cat siegerc |egrep -v "^$|#"
logfile = $(HOME)/var/log/siege.log
verbose = false
color = on
quiet = false
show-logfile = true
logging = false
gmethod = HEAD
parser = true
nofollow = ad.doubleclick.net
nofollow = pagead2.googlesyndication.com
nofollow = ads.pubsqrd.com
nofollow = ib.adnxs.com
limit = 255
protocol = HTTP/1.1
chunked = true
cache = false
connection = close
concurrent = 25
time = 1M
delay = 0.0
internet = false
benchmark = false
accept-encoding = gzip, deflate
url-escaping = true
unique = true

Mat der aktueller Konfiguratioun wäert d'Belagerung 25 concurrent Benotzer iwwer 1 Minutt imitéieren.

Dir sidd elo prett Är Belagerung ze lafen.

Testen Websäit Luet mat Siege Benchmarking Utility

Belagerung lafen ass zimmlech einfach, Dir musst nëmmen d'Websäit spezifizéieren déi Dir wëllt testen wéi dëst:

# siege example.com

Wann d'Disponibilitéit bei 100% bleift an et gi keng gescheitert Verbindungen, huet Äre System gutt gemaach an et waren keng Probleemer. Dir sollt och d'Äntwertzäit behalen.

Dir kënnt verschidde URLen testen, andeems Dir Belagerung setzt fir se aus der Datei ze liesen. Dir kënnt d'URLen an /usr/local/etc/urls.txt esou beschreiwen:

Elo fir d'Belagerung ze soen fir d'URLen aus der Datei ze testen, benotzt d'Optioun -f wéi dës:

# siege -f /usr/local/etc/urls.txt

Dir kënnt och Kommandozeiloptiounen benotzen, wann Dir aner Astellunge wëllt probéieren wéi déi an der Konfiguratiounsdatei beschriwwen.

  • -C – spezifizéiert Är eege Konfiguratiounsdatei.
  • -q - dréckt d'Output vun der Belagerung.
  • -g - GET, zitt HTTP Header erof a weist d'Transaktioun. Nëtzlech fir Debugging.
  • -c - d'Zuel vun de gläichzäiteg Benotzer, Standard ass 10.
  • -r – wéivill Mol fir den Test auszeféieren.
  • -t – wéi vill Zäit fir den Test auszeféieren. Dir kënnt S, M oder H uginn: –Time=10S fir 10 Sekonnen.
  • -d – zoufälleg Verzögerung virun all Ufro.
  • -b – keng Verspéidungen tëscht Ufroen.
  • -i – Benotzersimulatioun. Benotzt fir zoufälleg URLen ze schloen.
  • -f – Test URLen aus spezifizéierter Datei.
  • -l – Log Datei.
  • -H – Füügt en Header fir d'Ufro un.
  • -A – spezifizéiert e Benotzer Agent.
  • -T – Setzt den Inhalt-Typ op Ufro.
  • --no-parser – KEE PARSER, schalt den HTML Säit Parser aus.
  • --no-follow – verfollegen net HTTP Viruleedungen.

Belagerung ass e mächtegt Tool fir Är System Zouverlässegkeet ze moossen wann Dir ënner héijer Belaaschtung ass. Et kann vun Webentwéckler benotzt ginn fir hire Code ze testen wann de Site ënner Zwang ass. Dir sollt Är Tester ëmmer virsiichteg ausféieren, well de getestene Server während der Evaluatioun onzougänglech ka ginn.