Чтобы сделать некоторые нагрузочное тестирование, для моего собственного любопытства, на моем сервере я побежал:Нагрузочного тестирования с AB ... поддельные невыполненные запросы (длиной)
ab -kc 50 -t 200 http://localhost/index.php
Это открывает 50 Keep-Alive соединения для 200 секунд, и только хлопает мой сервер с запросами на index.php
в моих результатов, я получаю:
Concurrency Level: 50
Time taken for tests: 200.007 seconds
Complete requests: 33106
Failed requests: 32951
(Connect: 0, Receive: 0, Length: 32951, Exceptions: 0)
Write errors: 0
Keep-Alive requests: 0
Total transferred: 1948268960 bytes
HTML transferred: 1938001392 bytes
Requests per second: 165.52 [#/sec] (mean)
Time per request: 302.071 [ms] (mean)
Time per request: 6.041 [ms] (mean, across all concurrent requests)
Transfer rate: 9512.69 [Kbytes/sec] received
Обратите внимание на 32951 «не удалось» запросов. Я не могу понять это.
По мере прохождения теста я смог получить доступ к своему веб-сайту с моего домашнего компьютера совершенно, хотя время загрузки страницы внизу страницы было указано как .5 вместо обычного .02. Однако у меня никогда не было неудачной просьбы.
Так почему же AB сообщает, что половина соединений терпит неудачу? И что означает «длина:» в этом контексте?
Thanks
На вашем сайте имеется балансировщик нагрузки? См. Мое сообщение в блоге о [нагрузочном тестировании с балансировщиками нагрузки] (http://blog.browsermob.com/2009/02/tips-for-testing-with-load-balancers/), которые могут объяснить «это работает для меня», ситуация при нагрузочном тестировании. –