Стресс / нагрузочный тест Ajax тяжелое веб-приложение - PullRequest
3 голосов
/ 19 августа 2011

Я хочу симулировать большую нагрузку на мой веб-сервер, постоянно просматривая список URL-адресов снова и снова!

Изначально я планировал написать простой скрипт с использованием wget / curl, но из-за того, чтоСайт использует много запросов AJAX для большей части своего тяжелого подъема, это не осуществимые варианты.Это потребовало бы от меня написания сложного сценария для анализа html-кода по ссылке, извлечения запроса ajax, скручивания их.Я должен был бы делать это рекурсивно для каждого запроса.

В идеале, есть какой-то способ получить посредника (или что-то подобное), чтобы просто перебрать список URL, тратя 15-30 секунд на каждую ссылку, прежде чем перейти к!Это будет означать, что весь мой javascript будет выполняться при посещении каждого URL, и загрузка сайтов будет репрезентативной

Кто-нибудь знает, как мне это легко сделать?

Ответы [ 4 ]

3 голосов
/ 11 февраля 2014

Взгляните на LoadBooster (https://www.loadbooster.com). Это облачный сервис нагрузочного тестирования, использующий браузер без скриптов PhantomJS для тестирования веб-сайтов. Отказ от ответственности: я работаю для LoadBooster.

2 голосов
/ 19 августа 2011

То, что вы ищете, это «программное обеспечение для нагрузочного тестирования». Есть много решений - насколько хорошо они справляются с AJAX, сильно варьируется. Инструмент, который управляет реальным браузером (через что-то вроде Selenium), может оказаться самым простым для вас, чтобы начать работу - при условии, что ваши тестовые сценарии действительно так же просты, как «посетить этот список URL». Существует как минимум один веб-инструмент тестирования в реальном браузере, который может сделать это за вас (BrowserMob). Наш продукт, Web Performance Load Tester , имитирует браузер, но мы в целом способны довольно хорошо справляться с AJAX. AFAIK, все бесплатные решения довольно ограничены в том, что они могут делать, особенно когда задействован AJAX.

2 голосов
/ 19 августа 2011

Используйте Apache Bench.

ab

Примерно так:

> ab -k -n 100 -c 100 -g myresults.txt <a href="http://myajax.com/page" rel="nofollow">http://myajax.com/page</a>

Приведенное выше означало бы, 100 страниц на 100 одновременных соединений, все с сохранениемживой и сохраните результаты в текстовый файл myresults.txt.

http://www.google.co.uk/search?sourceid=chrome&ie=UTF-8&q=ab+apache

Там также есть seige.

0 голосов
/ 11 февраля 2014

Я использовал WebLOAD для теста аналогичного типа - этот механизм корреляции очень полезен в тяжелых AJAX-ситуациях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...