Рекомендации по тестированию Web-приложений под нагрузкой
Тестирование под нагрузкой (load testing) должно быть частью любого проекта разработки Web-приложения, причем его следует проводить уже на первых реализации проекта. Однако, если вы полагаете, будто для
тестирования под нагрузкой подойдет среда разработки, ждите сюрпризов в реальной жизни. В этой статье авторы описывают, как спланировать тестирование под нагрузно». рассматривают, на каких компьютерах его проводить, сколько пользователей имитировать, какие инструменты подходят для этого и как интерпретировать результаты.
Рассмотрим такой сценарий. Вы завершаете шестимесячную разработку сложного Интернет-приложения или Web-сервиса и готовитесь к его развертыванию. Вы тщательно спроектировали слабо сопряженное (loosely coupled) многоуровневое Web-npiUiomeiine, включив в его архитектуру все необходимое для обеспечения масштабируемости, стабильности и высокой производительности. Группа контроля качества тщательно протестировала систему, и теперь самые серьезные ошибки устранены, а остальные решено считать известными, которые будут исправлены в следующей версии. Значит, развертывание должно пройти гладко, так? Подумайте еще разок.
Вы предусмотрели в процессе разработки тестирование под нагрузкой? Если нет, где-то в сложной структуре вашего приложения есть проблемы с производительностью, масштабируемостью и стабильностью. Узкими местами являются те элементы системы, которые препятствуют нормальному прохождению трафика. Хорошая архитектура, конечно, очень важна, но, как показывает опыт, большинство ошибок такого рода (т. е. узкие места) можно выявить только при тестировании приложения под нагрузкой. Этих проблем не обнаружишь при тестировании системы единственным пользователем в процессе разработки. А тестирование под нагрузкой позволяет свести к минимуму количество неприятных сюрпризов при эксплуатации приложения в Web.
В этой статье
