Тестирование нагрузки

casinolot

Гуру форума
Регистрация
21 Окт 2010
Сообщения
547
Реакции
87
Не знаю в правильный ли раздел
Но начал тестировать свой сервер через Siege
и в жёстком тесте при 1000 одновременных юзеров по одному запросу без задержек, только 60% смогли получить ответы.
Что мне проанализировать и что поменять чтобы улучшить этот показатель, пока только идеи в оптимизации запросов к Базе и кэширование. Или я не прав?
 
Прежде всего, анализируйте вывод top. Главные параметры - load average и %CPU на процессы. Если LA>15, это уже плохо, большие потери на переключение контекстов, доходящие до 50% процессорного времени. Далее анализируется, кто создает затык - это либо PHP, либо MySQL. Если PHP - используйте профайлер навроде xdebug, если MySQL - включите slow_query_log, также анализируйте запросы через explain, по этой теме манов в сети предостаточно.
 
Главные параметры - load average и %CPU на процессы. Если LA>15, это уже плохо, большие потери на переключение контекстов, доходящие до 50% процессорного времени.
Немного не соглашусь.
1. По опыту LA>6 это уже плохо.
2. Учитывая производительность современных CPU, load averages растет, как правило, когда сервер упирается в скорость работы дисковой подсистемы.
3. С Mysql тоже не все однозначно. Бывает невозможно оптимизировать работу MySQL без реинжениринга БД, особенно, если эту самую БД проектировали криворукие индусы...

Плюс для тестирования веб-серверов помнится были еще утилитки типа AutoBench, OpenWebLoad и тд.
 
Назад
Сверху