Próbuję dowiedzieć się, jak korzystać z ApacheBench i sprawdzić moją stronę internetową. Zainstalowałem domyślny projekt strony (jest to ASP.NET MVC, ale proszę nie umieszczaj go na końcu, jeśli nie jesteś osobą .NET).Czy ktoś może wyjaśnić, co oznaczają te wyniki ApacheBench?
Nic nie zmieniłem. Dodaj nowy projekt. Ustaw confuration na RELEASE. Uruchom bez debugowania. (więc jest w trybie LIVE). Tak, dzieje się tak z wbudowanym serwerem internetowym, a nie z IIS, Apache lub cokolwiek innego.
Więc oto wyniki: -
C:\Temp>ab -n 1000 -c 1 http://localhost:50035/
This is ApacheBench, Version 2.3 <$Revision: 655654 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking localhost (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests
Completed 800 requests
Completed 900 requests
Completed 1000 requests
Finished 1000 requests
Server Software: ASP.NET
Server Hostname: localhost
Server Port: 50035
Document Path: /
Document Length: 1204 bytes
Concurrency Level: 1
Time taken for tests: 2.371 seconds
Complete requests: 1000
Failed requests: 0
Write errors: 0
Total transferred: 1504000 bytes
HTML transferred: 1204000 bytes
Requests per second: 421.73 [#/sec] (mean)
Time per request: 2.371 [ms] (mean)
Time per request: 2.371 [ms] (mean, across all concurrent requests)
Transfer rate: 619.41 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 1.1 0 16
Processing: 0 2 5.5 0 16
Waiting: 0 2 5.1 0 16
Total: 0 2 5.6 0 16
Percentage of the requests served within a certain time (ms)
50% 0
66% 0
75% 0
80% 0
90% 16
95% 16
98% 16
99% 16
100% 16 (longest request)
C:\Temp>
Teraz nie jestem pewien dokładnie to, co powinno być patrząc na.
Po pierwsze, po liczbie żądań na sekundę. Więc jeśli mamy wymóg obsługi 300 reqs/sec, to czy to mówi, że obsługuje i średnio 421 odpowiedzi na sekundę?
Po drugie, jaki jest powód dodania większej liczby współbieżnych? W jaki sposób, jeśli mam 1000 trafień na 1 współbieżnie, jak to się różni od 500 na 2 równoczesnych? Czy jest to test, czy istnieje kod blokujący inne żądania?
Wreszcie, czy jest coś ważnego, co przegapiłem z wyników, które powinienem wziąć pod uwagę?
Dzięki :)
Pozdrawiam kolega :) Nie mam żadnych baz danych ani usług warstwy pośredniej. To po prostu domyślny out of box standardowego projektu ASP.NET MVC. Po prostu próbuję zrozumieć, jak działa ApacheBench i jak mogę go użyć do prawdziwego benchmarkingu, itp. :) –