Drupalize.Me

 A Drupalize.Me Tutorial

Siege on hyödyllinen kuormitustestaustyökalu, jonka avulla voit lisätä suorituskykytestaustyökalupakkaukseesi. Verkkosivuilta:

Siege on HTTP-kuormitustestaus-ja benchmarking-apuohjelma. Sen tarkoituksena oli antaa web-kehittäjien mitata koodiaan pakon edessä nähdäkseen, miten se kestää ladata internetiin. Siege tukee perustodennusta, evästeitä, HTTP -, HTTPS-ja FTP-protokollia. Sen avulla sen käyttäjä osuma palvelimen konfiguroitavissa määrä simuloituja asiakkaita. Asiakkaat piirittävät palvelinta.”

Lataustestaus on hyödyllinen sivustosi suorituskyvyn ja sen käyttämän infrastruktuurin testaamisessa. Ei ole mitään pahempaa kuin ottaa sivu sivustosi lähetetty suosittu sivusto ja katsella sivustosi murentua kuorman alle. Siege voi simuloida toimintaa sivustossasi, ja voit sitten käyttää sivustoasi selaimellasi normaalisti, kun piiritys on käynnissä ja todella saada tuntumaa siitä, miten sivustosi vastaa kuormitettuna.

tämä blogikirjoitus käsittelee Siegen asentamista OS X: ään ja Linuxiin sekä peruskuormitustestin suorittamista Siegen kanssa.

oletukset

tämä opetusohjelma olettaa, että olet mukava käyttää komentoriviä peruskäskyjen antamiseen ja että paikalliskoneellesi on asennettu verkkosivusto, jota voit testata.

asentaminen Siege

Lataa

ensin, suuntaa https://www.joedog.org/siege-home/ ja etsi URL-osoite Siege-sovelluksen uusimman version arkistoon. Kirjoitushetkellä se on Siege-versio 3.1.0.

Tallenna

avaa nyt Terminaalisovellus, Tallennamme tämän arkiston Lataushakemistoomme.

OS X: llä
cd ~/Downloadscurl -O http://download.joedog.org/siege/siege-3.1.0.tar.gz
Linuxilla
cd ~/Downloadswget http://download.joedog.org/siege/siege-3.1.0.tar.gz

pura arkisto

tar -xvf siege-3.1.0.tar.gz

muutos arkistohakemistoon

cd siege-3.1.0

Määritä ja rakenna se!

./configuremakemake install

Lue Docs

jos tarvitset, Katso täydelliset Asennusohjeet.

Tarkista asennettu versio

hienoa, nyt voimme testata, että meillä on siege asennettu oikein, tarkistetaan järjestelmäämme asennettu versio.

siege -VSIEGE 3.1.0

hurraa, meillä on versio 3.1.0 siege asennettu järjestelmäämme, Let ’ s get alas joitakin testaus!

kuormitustestaus piirityksen kanssa

aion käyttää Drupal-sivustoa, jonka olen asentanut paikallisesti kuormitustestiin. Aloita perus piiritys suorita seuraava komento käyttäen haluamasi sivuston URL (käytän http://drupal7.local):

siege http://drupal7.local

Tämä aloittaa piirityksen oletusasetuksilla, jotka ovat 15 samanaikaista käyttäjää, jotka käyttävät sivustosi hakemistosivua, kunnes pysäytät piirityksen painamalla control + c.

tämä antaa piiritystilastot testiäsi varten:

Lifting the server siege... done.Transactions: 385 hitsAvailability: 100.00 %Elapsed time: 76.02 secsData transferred: 0.84 MBResponse time: 2.40 secsTransaction rate: 5.06 trans/secThroughput: 0.01 MB/secConcurrency: 12.18Successful transactions: 385Failed transactions: 0Longest transaction: 5.73Shortest transaction: 0.31

kuormitustestin tulosten tulkitseminen

nyt ensinnäkin tulokseni eivät ole kovin vaikuttavia, koska suoritan tätä pienitehoisella virtuaalikoneella paikallisella koneellani, jos olet kuormitustestauspaikoilla, sinun pitäisi odottaa paljon nopeampia vasteaikoja.

terminologia

Tapahtumat on palvelinosumien lukumäärä. Esimerkissä 385 tapahtumaa.

kulunut aika on koko piirityskokeen kesto. Tämä mitataan siitä, kun käyttäjä vetoaa piiritykseen, kunnes viimeinen simuloitu käyttäjä suorittaa tapahtumansa. Yllä olevassa kuvassa testi kesti 76,02 sekuntia.

siirretty Data on jokaiselle piiritystä simuloivalle käyttäjälle siirretyn tiedon summa. Se sisältää otsikon tiedot sekä sisällön. Koska se sisältää otsikkotiedot, Siegen ilmoittama Numero on suurempi kuin palvelimen ilmoittama numero. Internet-tilassa, joka osuu määritystiedoston satunnaisiin URL-osoitteisiin, tämän numeron odotetaan vaihtelevan ajosta toiseen.

vastausaika on keskimääräinen aika, joka kuluu kunkin simuloidun käyttäjän pyyntöihin vastaamiseen.

Tapahtumanopeus on keskimääräinen tapahtumamäärä, jonka palvelin pystyi käsittelemään sekunnissa, pähkinänkuoressa: tapahtumat jaettuna kuluneella ajalla.

läpimeno on keskimäärin joka sekunti palvelimelta kaikille simuloiduille käyttäjille siirrettyjen tavujen määrä.

Yhtäaikaisuus on keskimääräinen samanaikaisten yhteyksien lukumäärä, joka nousee palvelimen suorituskyvyn laskiessa.

onnistuneet tapahtumat on se, kuinka monta kertaa palvelin palautti koodin alle 400. Näin ollen uudelleenohjauksia pidetään onnistuneina tapahtumina.

Testing Multiple Pages

to test multiple URLs we can use a URL file to provide a list of url to test during our siege. Luo tekstitiedosto nimeltään URL.txt, ja lisätä URL haluat testata vastaan (yksi per rivi), luon minun käyttäjän kotihakemistoon ~/URL.txt

Siege ymmärtää seuraavan URL-muodon:

# Comments proceeded by a hashhttp://drupal7.local/http://drupal7.local/node/2http://drupal7.local/node/7http://drupal7.local/rest/node

Nyt voit aloittaa siege ja antaa polku tiedoston loit, aloittaa testin vastaan näitä URL-osoitteita:

siege -f /path/to/your/urls.txt

Internet-tila

Internet-tila on toinen mielenkiintoinen vaihtoehto Siegessä, jossa jokainen käyttäjän testissä lyömä URL satunnaistetaan. Tämä jäljittelee tosielämän tilannetta, jossa et voi ennustaa, mikä URL henkilö vierailee sivustossasi. Toinen seuraus tästä vaihtoehdosta on, että ei ole mitään takeita siitä, että jokainen sivu URL-tekstitiedostossa osuu, koska satunnaistaminen.

aloittaaksesi piirityksen internet-tilassa, käytä seuraavaa komentoa, joka kulkee jälleen URL-osoitteidesi polulla.txt:

siege -if /path/to/your/urls.txt

samanaikaisten käyttäjien määrän lisääminen

samanaikaisten käyttäjien määrän lisääminen tehdään-C-lipulla, ohittaen niiden samanaikaisten käyttäjien määrän, jotka haluat testata:

siege -if /path/to/your/urls.txt -c 500
' -c NUM '' –concurrent=NUM '

samanaikaiset käyttäjät (vaatii argumentin): tämän valinnan avulla käyttäjä voi korostaa www-palvelinta simuloitujen käyttäjien lukumäärällä. Määrää rajoittavat vain käytettävissä olevat laskentaresurssit, mutta realistisesti pari sataa simuloitua käyttäjää on moninkertainen määrä varsinaisiin käyttäjäsessioihin verrattuna. Valitsemasi numero kuvaa palvelimesi käsittelemien tapahtumien määrää. Se ei edusta samanaikaisten istuntojen määrää. Muista, todellinen käyttäjät kestää jonkin aikaa todella lukea sivun, että he ovat pyytäneet.

on myös hyödyllistä käyttää-d-lippua, joka mahdollistaa tapahtumien porrastamisen:

siege -if /path/to/your/urls.txt -c 500 -d 3
' -d NUM '' –delay=NUM 'Each siege simulated user is delayed for a random number of seconds between one and NUM. If you are benchmarking performance, it is recommended that you use a 1 second delay ( -d1 ). The default value is three (3 ). This delay allows for the transactions to stagger rather then to allow them to pound the server in waves.

Siege on paljon enemmän tarjottavaa, ja kehotan teitä lukemaan asiakirjat kokonaisuudessaan saada täydellisempää ymmärrystä, mutta toivottavasti tämä opetusohjelma saa sinut matkalla.

jos haluat piirittää sivuja, jotka vaativat tunnistautumista Drupal-käyttäjänä, tarkista tämä helper script: https://github.com/msonnabaum/DrupalSiege

Siegen poistaminen ja siivoaminen

jos päätät, ettet enää halua Siegeä järjestelmääsi, poista se ensin, poista lähdehakemisto ja arkistot:

Vaihda hakemistoon, johon latasit Siegen:

cd ~/Downloads/siege-3.1.0/make uninstall

Nyt voit turvallisesti poistaa lähdekansio, ja arkisto klo:

~/Downloads/siege-3.1.0~/Downloads/siege.-3.1.0.tar.gz

paljon puhetta suorituskyvystä

jos sivustosi kokee suoriutuvansa huonosti piirityksen aikana, haluat selvittää miksi! Tarkistettavia asioita:

  • palvelimen kuormitus
  • oletko ottanut käyttöön välimuistia?

Vastaa

Sähköpostiosoitettasi ei julkaista.