Стресс-тест веб-приложения - PullRequest
2 голосов
/ 17 февраля 2010

Я использую pylot для стресс-тестирования созданного мной веб-приложения. Тест имитирует 100 пользователей, вошедших в приложение, и тест длится 200 секунд. В среднем ок. На сервер делается 4800 запросов и столько же соединений с MySql, каждый из которых выполняет 5 запросов, поэтому мы говорим о 24K запросах во время теста.

Запросы просты, а таблицы содержат очень мало данных. Дело в том, что во время теста я не могу получить доступ к приложению из Интернета. Я либо не могу подключиться к MySql, либо время отклика очень медленное. Имейте в виду, что тест проводится на образе CentOS VMware, который у меня есть на компьютере (выделено 512 МБ памяти).

Ниже приведены результаты теста

запросов: 4809 Ошибки: 1 средний ответ Время: 3.358 Средняя пропускная способность: 23.53 Текущая пропускная способность: 420 байт Получено: 193028

Я считаю, что ошибки подключения вызваны тестовой средой нижнего уровня, но есть ли Как я могу настроить MySql для приема большего количества соединений?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 23 февраля 2010

Вы используете пул соединений?

Максимальное количество подключений MySQL может быть легко увеличено, если вы действительно исчерпываете, посмотрите на этот блок в my.ini или my.cnf в каталоге установки MySQL:

# The maximum amount of concurrent sessions the MySQL server will
# allow. One of these connections will be reserved for a user with
# SUPER privileges to allow the administrator to login even if the
# connection limit has been reached.

max_connections=500

Если вы используете пул соединений, вы можете ограничить его размер, скажем, до 250 из 500, доступных в MySQL, тогда у вас будет 250 «запасных», которые гарантируют, что ваш веб-доступ получит соединение. Вы можете проявить изобретательность, предоставив процесс входа в систему 100, чтение данных 100, запись данных 100 и т. Д., Но это, очевидно, в значительной степени влияет на дизайн вашего приложения.

0 голосов
/ 19 февраля 2010

Попробуйте и получите более подробную информацию об ошибках. Либо проверьте результаты, либо добавьте логирование на сайт.

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