Weboldal keresés

Tesztelő webszerverek betöltése a Siege Benchmarking eszközzel


Annak ismerete, hogy webszervere mekkora forgalmat képes kezelni stresszhelyzetben, elengedhetetlen a webhely vagy az alkalmazás jövőbeli növekedésének megtervezéséhez. Az ostrom nevű eszköz használatával terhelési tesztet futtathat a szerveren, és megnézheti, hogyan teljesít a rendszer különböző körülmények között.

Az ostrom segítségével kiértékelheti az átvitt adatmennyiséget, a válaszidőt, a tranzakciós sebességet, az átviteli sebességet, az egyidejűséget és azt, hogy a szerver hányszor adott válaszokat. Az eszköznek három üzemmódja van, amelyekben működhet – regresszió, internetes szimuláció és nyers erő.

Fontos: Az Siege-t csak az Ön tulajdonában lévő szervereken szabad futtatni, vagy olyan szervereken futhat, amelyeken kifejezetten engedélye van a tesztelésre. Egyes országokban az ostrom használata jogosulatlan webhelyeken bűncselekménynek minősül.

Siege HTTP Load Testing Utility telepítése Linux alatt

A Siege többplatformos, és a következő parancsok használatával telepíthető Ubuntu/Debian és CentOS/RHEL disztribúciók alá.

A Siege telepítéséhez a Debin/Ubuntu alatt futtassa a következőket:

sudo apt install siege

A CentOS/RHEL esetén telepítenie kell és engedélyeznie kell az adattárat az ostrom telepítéséhez a következőkkel:

yum install epel-release
yum install siege

Alternatív megoldásként megépítheti az ostromot a forrásból. Ehhez telepítenie kell a build-essential és a fejlesztői csomagokat.

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

Ezután letöltheti a Siege-t a wget paranccsal, és az ábrán látható módon telepítheti a forrásokból.

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

Siege HTTP Load Testing Utility konfigurálása Linux alatt

Miután befejezte a telepítést, módosíthatja az ostrom konfigurációs fájlt. Az /etc/siege/siegerc könyvtárban található. Abban az esetben, ha úgy döntött, hogy forrásból építi fel a csomagot, akkor a következőt kell futtatnia:

sudo siege.config

Ez létrehozza a siege.conf fájlt, amely a felhasználó otthoni ~/.siege/siege.conf fájljában található.

A fájl tartalmának valahogy így kell kinéznie. Vegye figyelembe, hogy a logfile és az time direktívák megjegyzését törölni tudom:

cat siegerc |egrep -v "^$|#"
Minta kimenet
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

A jelenlegi konfigurációval az ostrom 25 egyidejű felhasználót imitál 1 percen keresztül.

Most készen állsz az ostrom lefuttatására.

Webhely betöltésének tesztelése Siege Benchmarking Utility segítségével

Az ostrom futtatása meglehetősen egyszerű, csak meg kell adnia a tesztelni kívánt webhelyet, így:

siege example.com

Ha a rendelkezésre állás továbbra is 100% marad, és nincsenek meghibásodott kapcsolatok, akkor a rendszer jól működött, és nem volt probléma. Figyelnie kell a válaszidőt is.

Futtasson Siege-et több webhely ellen

Több URL-t is tesztelhet úgy, hogy beállítja az ostrom beállítást a fájlból való olvasáshoz. Az URL-eket a következőképpen írhatja le a /usr/local/etc/urls.txt fájlban:

Most, hogy az ostrom-nak utasítsa a fájl URL-címeinek tesztelését, használja a -f kapcsolót a következő módon:

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

A parancssori opciókat is használhatja, ha a konfigurációs fájlban leírtaktól eltérő beállításokat szeretne kipróbálni.

  • -C – adja meg a saját konfigurációs fájlját.
  • -q – elnyomja az ostrom kimenetét.
  • -g – GET, húzza le a HTTP-fejléceket, és jelenítse meg a tranzakciót. Hasznos hibakereséshez.
  • -c – az egyidejű felhasználók száma, alapértelmezés szerint 10.
  • -r – hányszor kell futtatni a tesztet.
  • -t – mennyi idő a teszt futtatásához. Megadhat S, M vagy H értéket, például: –time=10S 10 másodpercig.
  • -d – véletlenszerű késleltetés minden kérés előtt.
  • -b – nincs késés a kérések között.
  • -i – felhasználói szimuláció. Véletlenszerű URL-ek eltalálására szolgál.
  • -f – URL-ek tesztelése a megadott fájlból.
  • -l – naplófájl.
  • -H – fejléc hozzáadása a kéréshez.
  • -A – felhasználói ügynök megadása.
  • -T – Beállítja a tartalomtípust a kérésben.
  • --no-parser – NO PARSER, kapcsolja ki a HTML-oldalelemzőt.
  • --no-follow – ne kövesse a HTTP-átirányításokat.
Következtetés

Az Siege egy hatékony eszköz a rendszer megbízhatóságának mérésére nagy terhelés alatt. A webfejlesztők használhatják kódjuk tesztelésére, amikor a webhely kényszer alatt áll. Mindig óvatosan futtasson teszteket, mivel a tesztelt szerver elérhetetlenné válhat a kiértékelés során.