Încărcați testarea serverelor web cu instrumentul Siege Benchmarking


A ști cât de mult trafic poate gestiona serverul tău web atunci când este stresat este esențial pentru planificarea dezvoltării viitoare a site-ului sau a aplicației tale. Folosind instrumentul numit asediu, puteți rula un test de încărcare pe serverul dvs. și puteți vedea cum funcționează sistemul dvs. în diferite circumstanțe.

Puteți utiliza siege pentru a evalua cantitatea de date transferate, timpul de răspuns, rata tranzacției, debitul, concurența și de câte ori serverul a returnat răspunsuri. Instrumentul are trei moduri, în care poate funcționa – regresiune, simulare pe internet și forță brută.

Important: Siege ar trebui să fie executat numai împotriva serverelor pe care le dețineți sau pe care aveți permisiunea explicită de a testa. În unele țări, folosirea asediului pe site-uri web neautorizate poate fi considerată o crimă.

Instalarea utilitarului Siege HTTP Load Testing în Linux

Siege este multiplatformă și poate fi instalat în distribuțiile Ubuntu/Debian și CentOS/RHEL folosind următoarele comenzi.

Pentru a instala Siege sub Debin/Ubuntu, puteți rula:

sudo apt install siege

Pentru CentOS/RHEL, trebuie să instalați și să activați depozitul pentru a instala siege cu:

yum install epel-release
yum install siege

Alternativ, puteți construi Asediul de la sursă. În acest scop, va trebui să aveți instalate pachete build-essential și de dezvoltare.

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

Apoi puteți descărca Siege folosind comanda wget și puteți instala din surse, așa cum se arată.

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

Configurarea utilitarului Siege HTTP Load Testing în Linux

După ce ați finalizat instalarea, puteți ajusta fișierul de configurare asediu. Se află în /etc/siege/siegerc. În cazul în care ați decis să construiți pachetul din sursă, va trebui să rulați:

sudo siege.config

Aceasta va genera fișierul siege.conf situat în casa utilizatorului dvs. ~/.siege/siege.conf.

Conținutul fișierului ar trebui să arate cam așa. Rețineți că am decomentat directivele fișierul jurnal și ora:

cat siegerc |egrep -v "^$|#"
Ieșire eșantion
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

Cu configurația actuală, siege va imita 25 de utilizatori concurenți în decurs de 1 minut.

Acum ești gata să-ți pornești asediul.

Testarea încărcării site-ului cu utilitarul Siege Benchmarking

Rularea siege este destul de ușoară, trebuie doar să specificați site-ul web pe care doriți să îl testați astfel:

siege example.com

Dacă disponibilitatea rămâne la 100% și nu există conexiuni eșuate, sistemul dvs. a funcționat bine și nu au existat probleme. De asemenea, ar trebui să urmăriți timpul de răspuns.

Rulați asediu împotriva mai multor site-uri web

Puteți testa mai multe adrese URL, setând asediu pentru a le citi din fișier. Puteți descrie adresele URL în /usr/local/etc/urls.txt astfel:

Acum, pentru a spune siege să testeze adresele URL din fișier, utilizați opțiunea -f astfel:

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

De asemenea, puteți utiliza opțiunile din linia de comandă, dacă doriți să încercați setări diferite față de cele descrise în fișierul de configurare.

  • -C – specificați propriul fișier de configurare.
  • -q – suprimă rezultatul asediului.
  • -g – GET, trage în jos antetele HTTP și afișează tranzacția. Util pentru depanare.
  • -c – numărul de utilizatori concurenți, implicit este 10.
  • -r – de câte ori se rulează testul.
  • -t – cât timp se execută testul. Puteți specifica S, M sau H, de exemplu: –time=10S timp de 10 secunde.
  • -d – întârziere aleatorie înainte de fiecare solicitare.
  • -b – fără întârzieri între solicitări.
  • -i – simulare utilizator. Se utilizează pentru a accesa adrese URL aleatoare.
  • -f – testează adresele URL din fișierul specificat.
  • -l – fișier jurnal.
  • -H – Adăugați un antet la cerere.
  • -A – specificați un agent utilizator.
  • -T – Setează tipul de conținut în cerere.
  • --no-parser – FĂRĂ PARSER, dezactivați analizatorul de pagini HTML.
  • --no-follow – nu urmați redirecționările HTTP.
Concluzie

Siege este un instrument puternic pentru a măsura fiabilitatea sistemului dvs. atunci când este sub sarcină mare. Poate fi folosit de dezvoltatorii web pentru a-și testa codul atunci când site-ul este constrâns. Ar trebui să rulați întotdeauna testele cu prudență, deoarece serverul testat poate deveni inaccesibil în timpul evaluării.