apache — Как выполнить нагрузочное тестирование PHP-сайта с обоих концов

Мы разработали сайт на PHP для небольших сервисов. Перед производством мы должны выполнить тестирование производительности и нагрузки со стороны сервера (то есть Apache) и со стороны клиента.

Со стороны клиента я хочу знать, каково среднее время отклика в целом и для каждого объекта и т. Д. Что касается серверной части (веб-сервер apache), я хочу знать, сколько запросов (клиентов) он может обработать до начала своей работы деградировать.

Есть ли какой-либо инструмент с открытым исходным кодом, как мы на платформе Linux, для этой цели. Или есть какой-либо веб-сайт (ы), доступный (свободно), который может выполнить все эти испытания.
Мы больше озабочены нагрузочным тестированием, когда мы хотим запрашивать на нашем веб-сайте одновременно 1000 пользователей (например) и хотим проверять различные показатели производительности на стороне клиента и на стороне сервера.

2

Решение

Вы можете найти список бесплатных и открытых инструментов для нагрузочного тестирования на http://www.opensourcetesting.org/category/testing-tools-overview/performance/?menu-page=overview, В настоящее время их насчитывается 59 (и считается).

Суженный список самых передовых кроссплатформенных инструментов нагрузочного тестирования с открытым исходным кодом можно найти в Инструменты тестирования нагрузки с открытым исходным кодом: какой из них использовать? В статье также есть матрица сравнения функций, примеры сценариев и отчеты.

Учитывая, что ваше приложение написано на PHP, я ожидаю, что вы не обладаете большим опытом работы с другими языками программирования, поэтому наиболее очевидный выбор будет в:

  • Цзун где вы можете создать свой нагрузочный тест, используя файлы XML
  • Apache JMeter который также хранит тестовые сценарии в формате XML, однако вы можете использовать графический интерфейс для создания тестовой логики, которая может быть быстрее и проще.

Оба инструмента предоставляют функции записи и воспроизведения, так что вы сможете создать свой скелет тестового сценария с помощью браузера.

0

Другие решения

Поскольку вы используете Apache, вы можете использовать ab провести стресс-тестирование серверной части вашего приложения.

Apache HTTP-сервер для тестирования производительности

ab это инструмент для тестирования вашего сервера Apache Hypertext Transfer Protocol (HTTP) Он разработан, чтобы дать вам представление о том, как работает ваша текущая установка Apache. Это особенно показывает, сколько запросов в секунду может обслуживать ваша установка Apache.

Давайте посмотрим пример:

ab -k -c 100 -n 10000 example.com/

Выполнив команду выше, вы будете нажимать http://example.com/ при 100 одновременных подключениях до 10 тыс. запросов.

Здесь у вас есть другой учебник, как использовать ab

Стресс-тест вашего PHP-приложения с помощью ApacheBench

Некоторые другие полезные инструменты:

  1. Apache JMeter
  2. httperf

Если вы хотите более детальный обзор вашего php объекты и все такое, я бы предложил вам проверить черный огонь. Как я знаю, они предлагают бесплатную версию для локального тестирования и только одно приложение. Но я не думаю, что вам нужен этот сейчас.

Для тебя front end Я бы предложил вам набор инструментов, которые помогут вам увидеть, как ваша страница работает на разных устройствах:

  1. Маяк
  2. PageSpeed ​​Insights
  3. Pingdom
0

По вопросам рекламы [email protected]