Drupalize.Me

 A Drupalize.Me Tutorial

Siege er et nyttig last testing verktøy for å legge til ytelsestesting verktøysett. Fra nettsiden:

Siege er EN HTTP belastning testing og benchmarking verktøyet. Den ble designet for å la webutviklere måle koden sin under tvang, for å se hvordan den vil stå opp for å laste på internett. Siege støtter grunnleggende autentisering, cookies, HTTP, HTTPS og FTP protokoller. Den lar brukeren treffe en server med et konfigurerbart antall simulerte klienter. Disse klientene plasserer serveren » under beleiring.»

Lasting av testing er nyttig for å teste ytelsen til nettstedet ditt og infrastrukturen det kjører på. Det er ingenting verre enn å ha en side på nettstedet ditt lagt ut på et populært nettsted og se på nettstedet ditt smuldre under belastningen. Siege kan simulere aktivitet på nettstedet ditt, og du kan deretter bruke nettstedet ditt fra nettleseren din som du normalt ville, mens siege kjører og virkelig få en følelse av hvordan nettstedet ditt reagerer under belastning.

dette blogginnlegget vil dekke installering Av Siege på OS x Og Linux, og kjøre en grunnleggende belastningstest med Siege.

Forutsetninger

denne opplæringen forutsetter at du er komfortabel med å bruke kommandolinjen til å utstede grunnleggende kommandoer og har et nettsted installert på din lokale maskin som du kan teste.

Installere Siege

Last Ned

først går du over til https://www.joedog.org/siege-home/ og finner NETTADRESSEN for et arkiv av den nyeste versjonen av Siege-programmet. I skrivende stund er Det Siege versjon 3.1.0.

Lagre

åpne Nå Terminal-appen, vi lagrer dette arkivet i Vår Nedlastingskatalog.

PÅ OS X
cd ~/Downloadscurl -O http://download.joedog.org/siege/siege-3.1.0.tar.gz
På Linux
cd ~/Downloadswget http://download.joedog.org/siege/siege-3.1.0.tar.gz

Pakk ut arkivet

tar -xvf siege-3.1.0.tar.gz

Bytt til arkivkatalogen

cd siege-3.1.0

Konfigurer og bygg det!

./configuremakemake install

Les Dokumentene

hvis du trenger Det, kan du se De fullstendige Installasjonsinstruksjonene.

Bekreft Installert Versjon

Flott, nå kan vi teste at vi har siege installert riktig, la oss bekrefte versjonen vi har installert på systemet vårt.

siege -VSIEGE 3.1.0

Hurra, vi har versjon 3.1.0 av siege installert på vårt system, la oss komme ned til noen testing!

Lasttesting med Siege

jeg skal bruke Et Drupal-nettsted som jeg har installert lokalt for å laste test. For å starte en grunnleggende beleiring, kjør følgende kommando ved hjelp av ønsket NETTADRESSE (jeg bruker http://drupal7.local):

siege http://drupal7.local

dette vil starte beleiringen med standardalternativene, som er 15 samtidige brukere som får tilgang til nettstedets indeksside, til du stopper beleiringen ved å trykke på control + c.

Dette vil gi beleiringsstatistikken for testen din:

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

Tolke Resultatene Av En Belastningstest

nå er først og fremst mine resultater ikke så imponerende, da jeg kjører dette på en lavdrevet virtuell maskin på min lokale maskin.

Terminologi

Transaksjoner er antall servertreff. I eksemplet er 385 transaksjoner.

Medgått tid er varigheten av hele beleiringstesten. Dette måles fra det tidspunkt brukeren påberoper beleiring til den siste simulerte brukeren fullfører sine transaksjoner. Vist ovenfor tok testen 76.02 sekunder å fullføre.

data overført er summen av data overført til hver siege simulert bruker. Det inkluderer header informasjon samt innhold. Fordi den inneholder topptekstinformasjon, blir tallet rapportert av siege større enn tallet rapportert av serveren. I internett-modus, som treffer tilfeldige Nettadresser i en konfigurasjonsfil, forventes dette tallet å variere fra kjør til kjør.

Responstid er den gjennomsnittlige Tiden det tok å svare på hver simulerte brukers forespørsler.

Transaksjonsfrekvens er gjennomsnittlig antall transaksjoner serveren kunne håndtere per sekund, i et nøtteskall: transaksjoner delt på medgått tid.

Gjennomstrømning er gjennomsnittlig antall byte som overføres hvert sekund fra serveren til alle simulerte brukere.

Samtidighet er gjennomsnittlig antall samtidige tilkoblinger, et tall som stiger etter hvert som serverytelsen reduseres.

Vellykkede transaksjoner er antall ganger serveren returnerte en kode mindre enn 400. Følgelig betraktes omdirigeringer som vellykkede transaksjoner.

Teste Flere Sider

for å teste flere Nettadresser kan vi bruke EN URL-fil for å gi en liste Over Nettadresser som skal testes under beleiringen. Opprett en tekstfil som heter urler.txt, og legg Til Nettadressene du vil teste mot (en per linje), lager jeg min i brukerens hjemmekatalog på ~/urls.txt

Siege forstår FØLGENDE URL-format:

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

Nå kan du starte siege og gi banen til filen du opprettet, for å starte en test mot Disse Nettadressene:

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

Internett-Modus

Internett-modus er et annet interessant alternativ I Siege, der Hver Nettadressene som en bruker treffer i testen, er randomisert. Dette etterligner en virkelig situasjon der du ikke kan forutsi HVILKEN URL en PERSON vil besøke på nettstedet ditt. Den andre implikasjonen av dette alternativet er at det ikke er noen garanti for at hver side i Url-tekstfilen blir rammet på grunn av randomiseringen.

for å starte En Beleiring i internett-modus, bruk følgende kommando, igjen passerer i banen til nettadressene dine.txt:

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

Øke Antall Samtidige Brukere

Øke antall samtidige brukere gjøres med-c-flagget, passerer antall samtidige brukere du vil teste med:

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

Samtidige brukere (krever argument): Dette alternativet lar brukeren stresse webserveren MED NUM antall simulerte brukere. Beløpet er begrenset bare av de tilgjengelige databehandlingsressursene, men realistisk er et par hundre simulerte brukere lik mange ganger det tallet i faktiske brukerøkter. Nummeret du velger representerer antall transaksjoner serveren håndterer. Det representerer IKKE antall samtidige økter. Husk at ekte brukere tar litt tid å faktisk lese siden de har bedt om.

Det er også nyttig å bruke-d-flagget som lar deg forskyve transaksjonene:

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 har mye mer å tilby, og jeg vil oppfordre deg til å lese dokumentasjonen i sin helhet for å få en mer fullstendig forståelse, men forhåpentligvis vil denne opplæringen få deg på vei.

hvis du Trenger Å Beleiringssider som krever godkjenning Som Drupal-Bruker, sjekk ut dette hjelpeskriptet: https://github.com/msonnabaum/DrupalSiege

Avinstallere Siege Og Rydde Opp

hvis du bestemmer deg for at Du ikke vil ha Siege installert på systemet lenger, må du først avinstallere Det, deretter fjerne kildekatalogen og arkivene:

Endre til katalogen du lastet Ned Siege til:

cd ~/Downloads/siege-3.1.0/make uninstall

Nå kan du trygt fjerne kildemappen, og arkivet på:

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

Mye Ståhei Om Ytelse

hvis nettstedet ditt føles som om det fungerer dårlig under beleiring, vil du finne ut hvorfor! Noen ting å sjekke:

  • Server load
  • har du implementert noen caching?

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.