|
AB komandos principas "Apache" ab komanda imituoja kelių gijų vienalaikes užklausas, kad patikrintų serverio apkrovos slėgį, taip pat kitus žiniatinklio serverius, tokius kaip nginx, lighthttp ir IIS. Apache附带的ab工具(使用的PHP环境是WAMP集成环境,ab工具位于D:wampinapacheApache2.2.21in)非常容易使用。 Komanda ab kelia labai mažus reikalavimus kompiuteriui, kuris išduoda apkrovą, ir ji neužims daug procesoriaus ar per daug atminties, tačiau sukels didžiulę apkrovą tiksliniam serveriui, todėl tai yra būtinas vaistas nuo kai kurių DDOS atakų, tinkantis bet kokio amžiaus žmonėms. Taip pat turite būti atsargūs naudodami patys. Priešingu atveju dėl per didelės apkrovos vienu metu tikslinis serveris mirs tiesiogiai dėl atminties išsekimo ir turės būti sunkiai paleistas iš naujo, o tai neverta prarasti. Esant nepakankamam pralaidumui, geriausia išbandyti vietoje, o testavimui per intranetą rekomenduojama naudoti kitą ar kelis intraneto serverius, kad gauti duomenys būtų daug tikslesni. Nuotoliniu būdu atliekamas žiniatinklio serverių testavimas nepalankiausiomis sąlygomis dažnai būna neveiksmingas (dėl per didelio tinklo delsos ar nepakankamo pralaidumo) Atsisiųskite ir įdiekite:
http://mirror.bit.edu.cn/apache//httpd/binaries/win32/?C=M;O=A Rasti httpd-2.2.21-win32-x86-no_ssl.msi Parametrų dokumentacija:
http://httpd.apache.org/docs/2.2/programs/ab.html
Veikimas: "Windows" atidarykite komandų eilutės langą cmd ir suraskite jį "Apache" diegimo katalogo šiukšliadėžės kataloge cd C:Program Files (x86)Apache Software FoundationApache2.2in Įveskite komandą: AB -N 800 -C 800 http://192.168.0.10/ (-n pateikia 800 užklausų, -c imituoja 800 sutapimą, atitinkantį 800 žmonių apsilankymą vienu metu, po to bandomasis URL) AB -T 60 -C 100 http://192.168.0.10/ Siųskite užklausas per 60 sekundžių, 100 užklausų vienu metu.
//如果需要在url中带参数,这样做 ab -t 60 -c 100 -T "tekstas/paprastas" -p p.txt http://192.168.0.10/hello.html p.txt yra ir ab.exe kataloge p.txt galite parašyti tokius parametrus kaip p=wdp&fq=78
Gautų parametrų paaiškinimas: Tai yra "ApacheBench" 2.3 versija <$Revision: 655654 > USD Autorių teisės 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licencijuota "Apache Software Foundation", http://www.apache.org/ Lyginamoji analizė 192.168.0.10 (būkite kantrūs) Įvykdyta 100 užklausų Įvykdyta 200 užklausų Įvykdyta 300 užklausų Įvykdyta 400 užklausų Įvykdyta 500 užklausų Įvykdyta 600 užklausų Įvykdyta 700 užklausų Įvykdyta 800 užklausų Atlikta 800 užklausų
Serverio programinė įranga: Microsoft-HTTPAPI/2.0 nurodo bandomos žiniatinklio serverio programinės įrangos pavadinimą Serverio pagrindinio kompiuterio pavadinimas: 192.168.0.10 Nurodo užklausos URL pagrindinio kompiuterio pavadinimą Serverio prievadas: 80 nurodo bandomos žiniatinklio serverio programinės įrangos klausymosi prievadą
Dokumento kelias: / reiškia pagrindinį absoliutų kelią užklausos URL, o užklausos tipą paprastai galime suprasti pagal failo priesagos pavadinimą Dokumento ilgis: 315 baitų reiškia HTTP atsakymo duomenų kūno ilgį Sutapimo lygis: 800 reiškia vienu metu esančių vartotojų skaičių, kuris yra vienas iš mūsų nustatytų parametrų Testų laikas: 0,914 sekundės Laikas, per kurį visos šios užklausos apdorojamos Užpildytos užklausos: 800 užpildytų užklausų Nepavykusios užklausos: 0 Nepavykusių užklausų skaičius Rašymo klaidos: 0 Ne 2xx atsakymai: 800 Iš viso perkelta: 393600 baitų Bendras tinklo perdavimas Perkeltas HTML: perkeltas 252000 baitų HTML turinys Užklausos per sekundę: 875,22 [#/sek.] (vidurkis) Pralaidumas - užklausos per sekundę Vienos užklausos laikas: 914.052 [ms] (vidutiniškai) Laikas, per kurį serveris atsako į užklausą ir atsako į puslapį Vienos užklausos laikas: 1,143 [ms] (vidurkis, visose vienu metu pateiktose užklausose) Vidutinis laikas, sunaudotas vienai vienu metu pateiktai užklausai Perdavimo greitis: 420,52 [Kbytes/s] gaunamas vidutinis srautas per sekundę tinkle, o tai gali padėti atmesti per didelio tinklo srauto, dėl kurio ilgas atsako laikas, problemą Tinkle sugaišto laiko suskirstymas: Prisijungimo laikas (ms) min mean[+/-sd] mediana max
Connect: 0 1 0.5 1 3
Processing: 245 534 125.2 570 682
Waiting: 11 386 189.1 409 669
Total: 246 535 125.0 571 684
Atsakymas į visas užklausas viso scenarijaus metu. Pagal scenarijų kiekviena užklausa turi atsakymo laiką 50 % šių vartotojų atsakymo laikas yra trumpesnis nei 571 milisekundė 80% vartotojų atsako laikas yra mažesnis nei 652 ms Maksimalus atsako laikas yra mažesnis nei 684 ms Per tam tikrą laiką įteiktų prašymų procentinė dalis (ms) 50% 571 66% 627 75% 646 80% 652 90% 666 95% 677 98% 681 99% 682 100% 684 (ilgiausia užklausa) Ši duomenų dalis naudojama kiekvienos užklausos apdorojimo laiko pasiskirstymui apibūdinti, pavyzdžiui, aukščiau pateiktame teste 80% užklausos apdorojimo laiko neviršija 6 ms, šis apdorojimo laikas reiškia ankstesnį užklausos laiką, tai yra vienam vartotojui vidutinį vienos užklausos apdorojimo laiką.
|