I-load ang Pagsulay sa mga Web Server nga adunay Siege Benchmarking Tool


Ang pagkahibalo kung unsa kadaghan ang trapiko nga mahimo sa imong web server kung naa sa stress hinungdanon alang sa pagplano sa umaabot nga pagtubo sa imong website o aplikasyon. Pinaagi sa paggamit sa himan nga gitawag og siege, mahimo nimong ipadagan ang usa ka pagsulay sa pagkarga sa imong server ug tan-awon kung giunsa ang paglihok sa imong sistema sa lainlaing mga kahimtang.

Mahimo nimong gamiton ang siege aron masusi ang gidaghanon sa datos nga gibalhin, oras sa pagtubag, rate sa transaksyon, throughput, concurrency ug kung pila ka beses nga gibalik sa server ang mga tubag. Ang himan adunay tulo ka mga mode, diin kini makalihok - regression, internet simulation ug brute force.

Mahinungdanon: Ang paglikos kinahanglan lamang nga ipadagan batok sa mga server nga imong gipanag-iya o sa ingon adunay klaro ka nga pagtugot sa pagsulay. Sa pipila ka mga nasud, ang paggamit sa paglikos sa dili awtorisado nga mga website mahimong isipon nga usa ka krimen.

Pag-instalar sa Siege HTTP Load Testing Utility sa Linux

Ang Siege usa ka multi platform ug mahimong ma-install sa ilawom sa mga distribusyon sa Ubuntu/Debian ug CentOS/RHEL gamit ang mga mosunod nga mga mando.

Aron ma-install ang Siege sa ilawom sa Debin/Ubuntu, mahimo ka nga modagan:

$ sudo apt install siege

Alang sa CentOS/RHEL, kinahanglan nimo nga i-install ug i-enable ang repository aron ma-install ang siege sa:

# yum install epel-release
# yum install siege

Sa laing paagi, mahimo nimong tukuron ang Siege gikan sa gigikanan. Alang niana nga katuyoan kinahanglan nimo nga adunay mga build-essential ug development packages nga na-install.

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

Dayon mahimo nimong i-download ang Siege gamit ang wget command ug i-install gikan sa mga tinubdan sama sa gipakita.

$ 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

Pag-configure sa Siege HTTP Load Testing Utility sa Linux

Kung nahuman na nimo ang pag-install, mahimo nimong i-adjust ang imong file sa pag-configure sa siege. Kini nahimutang sa /etc/siege/siegerc. Kung nakahukom ka nga tukuron ang package gikan sa gigikanan, kinahanglan nimo nga modagan:

$ sudo siege.config

Makamugna kini og siege.conf file nga nahimutang sa balay sa imong user ~/.siege/siege.conf.

Ang mga sulod sa file kinahanglan nga tan-awon sama niini. Timan-i nga ako adunay uncomment sa logfile ug mga direktiba sa oras:

# 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

Uban sa kasamtangan nga configuration, siege mosundog sa 25 ka dungan nga mga tiggamit sa 1 minuto.

Andam ka na karon sa pagpadagan sa imong paglikos.

Pagsulay sa Website Load gamit ang Siege Benchmarking Utility

Ang pagpadagan sa paglikos sayon ra, kinahanglan nimo nga ipiho ang website nga gusto nimong sulayan sama niini:

# siege example.com

Kung ang pagkaanaa nagpabilin sa 100% ug wala’y napakyas nga mga koneksyon, maayo ang imong sistema ug wala’y mga isyu. Kinahanglan mo usab nga bantayan ang oras sa pagtubag.

Mahimo nimong sulayan ang daghang mga URL, pinaagi sa pag-set sa siege aron mabasa kini gikan sa file. Mahimo nimong ihulagway ang mga URL sa /usr/local/etc/urls.txt sama niini:

Karon aron isulti sa siege aron sulayan ang mga URL gikan sa file, gamita ang -f nga kapilian sama niini:

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

Mahimo usab nimo gamiton ang mga kapilian sa command line, kung gusto nimo sulayan ang lainlaing mga setting gikan sa mga gihulagway sa file sa pag-configure.

  • -C – itakda ang imong kaugalingong configuration file.
  • -q – gipugngan ang output sa siege.
  • -g – GET, kuhaa paubos ang HTTP header ug ipakita ang transaksyon. Mapuslanon alang sa pag-debug.
  • -c – ang gidaghanon sa dungan nga tiggamit, ang default kay 10.
  • -r – kapila ipadagan ang pagsulay.
  • -t – pila ka oras sa pagpadagan sa pagsulay. Mahimo nimong ipiho ang S, M, o H ex: –oras=10S sulod sa 10 segundos.
  • -d – random nga paglangan sa dili pa ang matag hangyo.
  • -b – walay mga paglangan tali sa mga hangyo.
  • -i – simulation sa user. Gigamit aron maigo ang mga random nga URL.
  • -f – sulayi ang mga URL gikan sa gipiho nga file.
  • -l – log file.
  • -H – Pagdugang ug header nga ihangyo.
  • -A – itakda ang usa ka user agent.
  • -T – Nagtakda sa Content-Type sa hangyo.
  • --no-parser – WALAY PARSER, i-off ang HTML page parser.
  • --no-follow – ayaw pagsunod sa HTTP redirects.

Ang Siege usa ka kusgan nga himan aron masukod ang kasaligan sa imong sistema kung ubos sa taas nga karga. Mahimo kini gamiton sa mga web developers aron sulayan ang ilang code kung ang site ubos sa pagpugos. Kinahanglan nga kanunay nimong ipadagan ang imong mga pagsulay uban ang pag-amping tungod kay ang gisulayan nga server mahimo’g dili ma-access sa panahon sa pagtimbang-timbang.