Akunandaba ukuthi kuyasetshenziswa yini Nginx, Apache, Lighttpd noma okunye, noma yimuphi umphathi wenethiwekhi onesiphakeli sewebhu uzofuna ngesikhathi esithile ukwazi ukuthi iseva yewebhu iphendula ngokushesha kangakanani kunombolo ethile yemibuzo.
I-Apache Benchmark + GNUPlot
Ngalesi sikhathi sizosebenzisa ithuluzi elibizwa nge- I-Apache Benchmark, okuthi noma ine-'apache 'egameni layo, HHAYI kuphela ukukala ukusebenza kwe-Apache, kepha futhi ingasetshenziselwa i-Nginx nabanye. Empeleni, ngizoyisebenzisa ukukala ukusebenza kwe- Nginx.
Sizosebenzisa futhi I-GNUPlot, Ezosisiza senze amagrafu afana nalawa ngemigqa embalwa:
Ukufaka i-Apache Benchmark ne-GNUPlot
I-Apache Benchmark iyithuluzi esingalisebenzisa ngemuva kokufaka iphakethe le-Apache, i-GNUPlot izotholakala ngemuva kokufaka iphakethe legama elifanayo. Ngakho-ke ...
Ku-distros njengoDebian, Ubuntu noma okufanayo:
sudo apt-get install apache2 gnuplot
Ku-distros njenge-ArchLinux noma okuphuma kokunye:
sudo pacman -S apache gnuplot
Isebenzisa i-Apache Benchmark
Esizokwenza ukuthumela inombolo ethile yezicelo (i-100) ngamaqembu eziningana (kusuka kuma-20 kuye kwangama-20) kusayithi elithile. Umphumela sizowugcina kufayela le-.csv (result.csv) bese silicubungula nge-GNUPloit, umugqa uzoba:
ab -g resultados.csv -n 100 -c 20 http://nuestro-sitio-web.com/
Lokhu ngumphumela noma i-log engikhombisa lapho ngihlola isayithi kunethiwekhi yami:
Le yi-ApacheBench, Version 2.3 <$ Revision: 1638069 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Ilayisensi ku-Apache Software Foundation, http://www.apache.org/ Benchmarking gutl.jovenclub.cu (bekezela) ..... kwenziwe Isoftware Yeserver: nginx Server Hostname: gutl.jovenclub.cu Server Port: 80 Indlela Yemibhalo: / Ubude Bombhalo: Ama-206 amabhayithi Izinga Lemali Yesikhathi: 20 Isikhathi esithathiwe sokuhlolwa: imizuzwana engu-0.101 Qedela izicelo: Izicelo eziyi-100 Ezihlulekile: 27 (Xhuma: 0, Thola: 0, Ubude: 27, Okuhlukile: 0) Izimpendulo ezingezona ze-2xx: 73 Ingqikithi idlulisiwe: Ama-1310933 byte HTML adlulisiwe: 1288952 bytes Izicelo ngomzuzwana: 993.24 [# / sec] (kusho) Isikhathi ngesicelo ngasinye: 20.136 [ms] (kusho) Isikhathi ngesicelo ngasinye: 1.007 [ms] (kusho, kuzo zonke izicelo ezifanayo) Izinga lokudluliswa: 12715.49 [Kbytes / sec] lithole i-Connection Times (ms) min mean [+/- sd] I-median max Connect: 0 1 0.2 1 1 Iyacubungula: 1 17 24.8 4 86 Ilindile: 1 15 21.5 4 76 Ingqikithi: 1 18 24.8 5 87 Amaphesenti ezicelo ezinikezwe ngesikhathi esithile (ms) 50% 5 66% 6 75% 22 80% 41 90% 62 95% 80 98% 87 99% 87 100% 87 (isicelo eside kakhulu)
Ngiphawule ngombala obomvu lokho engikuthatha njengokubaluleke kakhulu, okuye kwaba ngaphezulu noma ngaphansi:
- Imininingwane yesiphakeli esiyivivinyayo, kanye ne-URL okukhulunywa ngayo.
- Inani lezicelo ngomzuzwana.
- Mangaki ama-millisecond athathe isiphakeli ukuhambela isicelo esithathe isikhathi eside, okungukuthi, leso esithathe isikhathi eside ukuphendulwa.
Ngalolu lwazi bangaba nombono wokuthi kuzothatha isikhathi esingakanani ukuthi iseva ihambele lelo nani lezicelo, bese bangeza uhlelo olungcono lwe-cache, basebenzise amamojula abangawasebenzisi, njll. Njll, ukwenza kabusha isivivinyo futhi bona ukuthi ukusebenza kuthuthukile noma cha.
Ezinye izinketho noma amapharamitha we-Apache Benchmark awusizo:
-k -H 'Yamukela-Encoding: gzip, deflate' : Ngalokhu ab uzokwamukela i-cache nokucindezelwa okwenziwe yiseva, ngakho-ke izikhathi zizobe ziphansi.
-f ama-urls.txt : Ngakho-ke esikhundleni sokuhlola inkomba yesayithi, izokwenza izivivinyo kuma-URL esiwacacisayo kulelo fayela.
Noma kunjalo ... bheka indoda ab ukuze ubone.
Khombisa umphumela kugrafu:
Ukubeka lokhu okukhiphayo esithombeni, okungukuthi, endaweni yokubuka ebonakalayo nokuthi izikhathi eziningi, yikho konke abaphathi abaphatha ukukuqonda ... ngalokhu sizokusebenzisa njengoba ngishilo ngaphambili, I-GNUPlot
Kwifolda efanayo lapho sinemiphumela yefayela.csv (khumbula, sisanda kukhiqiza ngomyalo ongenhla) sizokwakha ifayela elibizwa nge-gnuplot.p:
nano plot.p
Kuyo sizobeka okulandelayo:
setha ukuphela kwe-png size 600 set set output "imiphumela.png"setha isihloko"100 izicelo, 20 izicelo ezenzeka ngalesosikhathiizicelo"setha i-yelabel"isikhathi sokuphendula (ms)"icebo"imiphumela.csv"kusetshenziswa i-sbezier engu-9 ebushelelezi enesihloko semigqa"amadela.jovenclub.cu"
Ngikukhombisile ngokubomvu ukuthi yini okufanele uyihlole njalo. Lokho futhi kusuka phezulu kuya phansi:
- Igama lefayela lesithombe elizokwenziwa
- Inani lezicelo eziphelele nezenzeka ngesikhathi esisodwa.
- Igama lefayela esisanda kukhiqiza.
- Isizinda esisebenza kuso.
Lapho sesikufakile lokho, gcina bese uphuma (Ctrl + O bese Ctrl + X), Sizokwenza lokhu okulandelayo:
gnuplot plot.p
Futhi i-voila, ezokhiqiza igrafu enegama olifunayo, okwami yile:
I-Apache Benchmark inezinketho eziningi kakhulu, kunezinhlanganisela eziningi esingazisebenzisa ukwenza ukuhlolwa kwethu kokusebenza kuphelele ngokwengeziwe.
Kepha hhe, lokhu kube yizisekelo 😉
Jabulela!
Ibhentshimakhi le-apache elihehayo, yini i-gnuplot ebingazi ukuthi kungenzeka yini ukuguqula isitayela sokukhiphayo? Ngisho ngombiko osemthethweni.
Ukubingelela okuvela eChile.
Yebo, kunokulungiselelwa okuningi kunethiwekhi ye-gnuplot, cinga nge-Google ukubona ukuthi kukhona yini okutholayo okungathi sína noma okwanele ongakusebenzisa, ngoba lokho kunambitheka kwawo wonke umuntu 🙂
Ummm ngizoyihlola njengamanje kuseva ebonakalayo ye-apache engiyisebenzisayo ukubona ukuthi lokhu kuhamba kanjani, maqondana neGUTL, njengoba isha ngokushesha okukhulu kusuka kuzicelo ezingama-80, akunjalo? Ake sibone ukuthi i-100 ms ayisebenzi Azilutho, kepha okuphezulu okunikeza ezinye izicelo eziyi-10 uma kuqhathaniswa nama-70 kuye kwangama-80 kuthi angama-80 kuye kwangama-90 kubiza ukunaka kwami
Kufanele kube ngenxa yolayini noma inombolo enkulu yemicu ukuze iye ngasikhathi sinye. Kodwa-ke, ngenze isivivinyo ngaphandle kwe-gzip, ngaphandle kwe-deflate, ngaphandle kwe-cache noma yini 😉
Kuyathakazelisa kakhulu, ikakhulukazi ekusetshenzisweni kwe-GNUPlot. Ngokwalokho engikubonayo kungasetshenziselwa ukukhiqiza amagrafu kusuka kunoma iyiphi idatha esethiwe, akunjalo? ...
Yebo kunjalo, udlulisa idatha efayeleni elihlukaniswe amakhoma noma okuthile okunjalo, uyayitshela ukuthi ikucubungula kanjani kufayela lokumisa, ne-voila
Sawubona, ngihlala ngichitha isikhathi sami ngifunda le bhulogi kepha angikaze ngiphawule nganoma iyiphi i-athikili, futhi lokhu kubukeka njengethuba elihle.
Engifuna ukukuhlanganyela nawe ukuthi lolu hlobo lwegrafu lungahunyushwa ngokungeyikho, ngoba i-Apache Bench ihlela umphumela isebenzisa isikhathi (isikhathi esiphelele) esikhundleni sesikhathi sokulandelana. Yize imininingwane iseliqiniso, igrafu mhlawumbe ayibonisi esikufunayo.
Nasi isixhumanisi lapho ngiyifunde khona.
http://www.bradlanders.com/2013/04/15/apache-bench-and-gnuplot-youre-probably-doing-it-wrong/
Ukubingelela
I-Apache Benchmark ayilona ithuluzi elingcono kakhulu lokukala ukusebenza kwamaseva we-HTTP kumakhompyutha anezinhlamvu eziningi, ngaphezu kwalokho, izicelo eziyi-100 kuphela ezinokuxhumeka okuhambisanayo okungama-20 isivivinyo esibuthakathaka kakhulu, okuthile okungokoqobo kungaba izicelo eziyi-1,000 10,000 noma eziyi-100 ezinokuxhumeka okungu-10,000 ngasikhathi sinye ( kuyaziwa ukuthi i-Nginx ingesinye sezicelo ezikwazi ukuhambisa izicelo ezingaphezu kwezingu-XNUMX XNUMX ngomzuzwana) futhi ngalokhu kungcono ukusebenzisa ithuluzi elifana ne-weighttp, elenzelwe amakhompiyutha amaningi futhi lisebenzisa i-epoll esheshayo, ngokungafani ne-Apache Ibhentshi elisebenzisa intambo eyodwa kanye nendlela yokuphatha umcimbi engasebenzi kahle.
Ukubeka iphuzu lami, ngicabanga ukuthi iseva inezinhlamvu ezi-4 kuphela:
isisindo -n 10000 -c 100 -t 4 -k "http://our-web-site.com/"
Sawubona wonke umuntu,
Lapho udweba igrafu (kusuka ku-CSV) nge-gnuplot inginikeza iphutha elilandelayo, ungangitshela ukuthi ngingalixazulula kanjani?
"Plot.p", umugqa 8: isexwayiso: Ukweqa ifayela ledatha elingenawo amaphuzu avumelekile
uzungu «igrafu.csv» kusetshenziswa i-9 sbezier ebushelelezi enesihloko semigqa «AB - localhost / web»
^
"Plot.p", umugqa 8: x ububanzi abuvumelekile
Nge-gnuplot, ngingakwazi yini ukukhiqiza amakhasi we-HTML?