1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/lb002-php-stress-tester

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 3.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 27.11.2024 21:01 4019c53

Стресс-тестер на PHP

Build Status

Описание

Простой стресс-тестер, основанный на корутинах swoole.

Требования

  1. Swoole 2.1.0+ (при компиляции добавьте параметры --enable-openssl --enable-coroutine).
  2. PHP 7.1+.
  3. Не устанавливайте одновременно расширение opencensus, так как оно может вызывать проблемы с утечкой памяти.

Использование

# GET
php start.php -c 100 -n 1000 -host www.baidu.com -uri / -port 443 -ssl 1 -step 1

# POST
php start.php -c 100 -n 1000 -host www.baidu.com -uri / -port 443 -ssl 1 -step 1 -http_method POST -http_body {"foo":"bar"}

# PUT
php start.php -c 100 -n 1000 -host www.baidu.com -uri / -port 443 -ssl 1 -step 1 -http_method PUT -http_body {"foo":"bar"}

# DELETE
php start.php -c 100 -n 1000 -host www.baidu.com -uri / -port 443 -ssl 1 -step 1 -http_method DELETE -http_body {"foo":"bar"}

# Справка
php start.php -help

# Построение графика QPS
python tools/draw.py ~/php-stress-tester/reports/report_20180601144315278353823169.csv qps 1

Вывод

Тестирование...
Максимальное количество одновременных запросов: 100
Количество одновременных запросов: 100
Общее количество запросов: 1000
Среднее время выполнения: 41.335484266281 миллисекунды
Максимальное время выполнения: 165.99607467651 миллисекунды
Минимальное время выполнения: 25.51007270813 миллисекунды
Всего успешных запросов: 1000
Успешность: 100%
Среднее время успешного выполнения: 41.335484266281 миллисекунда
Максимальное время успешного выполнения: 165.99607467651 миллисекунда
Минимальное время успешного выполнения: 25.51007270813 миллисекунда
Всего неудачных запросов: 0
Неудачность: 0%
Среднее время неудачного выполнения: 0 миллисекунд
Максимальное время неудачного выполнения: 0 миллисекунд
Минимальное время неудачного выполнения: 0 миллисекунд
QPS в реальном времени: 1000
Средний QPS: 1000
Использование памяти: 2012.72 КБ

График QPS

График QPS

Аргументы

  1. -c — параллелизм.
  2. -n — количество запросов.
  3. -host — имя хоста.
  4. -uri — URI.
  5. -port — порт.
  6. -ssl — SSL.
  7. -step — шаг параллелизма.
  8. -http_method — метод HTTP.
  9. -http_body — тело HTTP.
  10. -memory_limit — ограничение памяти.
  11. -max_coroutine — максимальное количество корутин.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/lb002-php-stress-tester.git
git@api.gitlife.ru:oschina-mirror/lb002-php-stress-tester.git
oschina-mirror
lb002-php-stress-tester
lb002-php-stress-tester
master