Назад | Перейти на главную страницу

Как узнать, какое количество просмотров страниц в секунду является приемлемым для вашего сервера?

Инструмент Apache AB позволяет нам протестировать наш сервер, чтобы увидеть, сколько страниц в секунду может обрабатывать сервер. Очевидно, что результаты будут отличаться в зависимости от характеристик аппаратного и программного обеспечения сервера. У меня вопрос: как узнать, что результаты вашего сервера слишком низкие / их можно улучшить? Или приемлемы / оптимизированы?

Бенчмаркинг - такая сложная тема ...

Мои соображения ... используйте разную степень параллелизма в ваших тестах

1-2-8-16-64-256-512-1024-2048

И отправляйте много запросов .. пока

Вы начинаете видеть ошибки ... возвращаемые AB ...

Затем вы начинаете находить пределы своего приложения + веб-сервера ..

Не забывайте также о своем RTT и задержке.

Не забудьте запустить тесты на некоторое время, чтобы получить хорошее среднее значение.

Я также должен это отметить. Вы можете легко использовать весь ЦП на сервере, с которым вы тестируете ... чем сервер, который вы фактически тестируете .. Так что следите за ЦП и памятью на своей тестовой машине ..

Надеюсь, что это поможет: D

  • Если ваши результаты даже близки к общему приблизительному показателю для вашего сценария (по крайней мере, тысячи запросов в секунду для небольших статических файлов, по крайней мере сотни запросов в секунду для простого динамического PHP, возможно, меньше для тяжелого динамического контента с базами данных и т.д.), есть и сервер все еще хорошо работает, тогда все в порядке.

  • Также важно, чтобы во время нагрузочного теста серверу оставалось пространство для дыхания. Если у него почти не осталось процессорного времени или дополнительной памяти, тогда у вас будут большие проблемы во время внезапных всплесков трафика и / или роста вашего сайта.

  • Доверяй своим инстинктам. Если у вас есть только небольшая база данных для контента, и во время теста сервер базы данных, кажется, потребляет много ресурсов процессора, перейдите и перепроверьте все. Правильно ли настроен сам сервер базы данных? Все ли ожидаемые индексы на месте? Выполняет ли сайт какие-то неполноценные SQL-запросы, которые можно оптимизировать и / или кэшировать? Что-то другое? Или, если ваш веб-сервер тратит много времени даже на обслуживание статического содержимого, проверьте настройки веб-сервера.

И если вам случится протестировать сайт, работающий совершенно медленно, как патока, вы БУДЕТЕ знать, что есть место для оптимизации. Однажды я протестировал, казалось бы, простой сайт, работающий с 8-ядерным сервером, 16 ГБ оперативной памяти и всем остальным. ab, siege и JMeter отправляли мне пять запросов в секунду! В тот момент я знал, что что-то было очень и очень не так. По иронии судьбы, это был полностью неверно настроенный плагин кеширования для доступа к memcached, что было неправильным. После этого сайт стал примерно в 100 раз быстрее. :-)

На мой взгляд, это всегда связано с количеством пользователей и их ожидаемым / ожидаемым опытом. Ваш вариант использования будет отличаться, но я уверен, что если бы Google начал отвечать со скоростью, скажем, Expedia, люди были бы разочарованы. Итак, в конечном итоге все зависит от того, как ваша система реагирует на определенный объем трафика - и мы не можем сообщить вам эти данные, вам нужно знать сами.