[ главная ]   [ рейтинг статей ]   [ справочник радиолюбителя ]   [ новости мира ИТ ]



Ответов: 0
25-02-12 07:01







   Web - программирование
PHP


ASP






XML



CSS

SSI





   Программирование под ОС











   Web - технологии








   Базы Данных









   Графика






Данные




Web - технологии / Серверы /

В условиях, приближенных к боевым

Как проверить сервер Web на выносливость


Александр Авдуевский


Создание корпоративного сервера Web — процедура довольно непростая. При его разработке компании необходимо решить не только вопросы дизайна и содержания, но и производительности или, другими словами, обработки запросов пользователей. Оценить, насколько быстро будет работать сервер, можно несколькими путями. Например, среднее время загрузки страниц можно спрогнозировать, исходя из их объема и насыщенности графикой, и установить на основании этой величины ограничения на максимальный полный объем одной страницы. Однако куда сложнее спрогнозировать поведение сервера при множественных запросах пользователей, так как это вопрос не только дизайна, но еще и платформы и внешнего канала. Теоретические расчеты здесь малопродуктивны, требуется эксперимент.

Все на одного


Очевидно, что наиболее адекватные результаты дают испытания «в лоб», когда за рабочие места садятся много-много пользователей, каждый из которых загружает сервер как только может. Правда, с организационной точки зрения такое испытание представляется трудноосуществимым и малоэффективным. Впрочем, никто и никогда не тестирует сетевые ресурсы подобным образом, поскольку куда удобнее эмулировать работу нескольких рабочих мест на одном компьютере при помощи специальных утилит. В частности для тестирования сервера Web можно воспользоваться бесплатной утилитой VeloMeter, распространяемой компанией Binary Evolution (http://www.binaryevolution.com). VeloMeter представляет собой код, написанный на Java, благодаря чему теоретически она может применяться практически на любой платформе (тем не менее утилита все-таки существует в нескольких версиях — для каждой из платформ). Наличие исходного кода вкупе с открытой лицензией позволяет модифицировать эту утилиту в соответствии с потребностями и умением программировать на Java. Для запуска VeloMeter требуется наличие JDK версии не младше 1.1.6 (текущая, доступная на http://www.javasoft.com, имеет номер 1.1.8) или же соответствующей runtime-библиотеки JRT. Совокупный объем загружаемого на машину ПО, таким образом, к сожалению, получается немалым, хотя JDK или JRT могут, в принципе, пригодиться и для других целей.

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

Результат налицо. «Поиграв» параметрами, пользователь может
определить предел возможностей своего сервера Web.

Мы попробовали различные варианты настроек и установили для каждого из них критическое число пользователей, после которого время отклика скачкообразно увеличивалось. На иллюстрации представлен простой случай, но при увеличении нагрузки разрыв становится намного более резким — скачок может быть сразу на порядок или даже два. Результаты тестирования дают возможность сопоставить реальные возможности сервера с планируемой интенсивностью его использования.

На наш взгляд, стрессовое тестирование надо производить либо из локальной сети, либо по очень мощному каналу Internet, чтобы узкое «бутылочное горлышко» не приводило к искажению результатов. Заметим также, что в рассматриваемом варианте VeloMeter не настраивается на работу через proxy-сервер или брандмауэр. Среди дополнительных возможностей VeloMeter — параллельное тестирование двух серверов, позволяющее сравнить возможности «зеркал». Кроме того, в качестве URL можно задать командную строку запроса формы или сценария cgi. Это дает возможность оценить работу поисковой машины, самого чувствительного, пожалуй, к нагрузке ресурса.

Утилита внешне и функционально более чем проста, но при таких условиях распространения большего требовать и не приходится. Улучшить интерфейс и расширить функциональность можно путем дополнительного программирования или покупки коммерческой версии продукта — VeloMeter Pro.

Заключение


VeloMeter, в своем бесплатном варианте, — конечно, не самый гибкий и удобный в работе инструмент. Такова уж политика разработчика — все удобства только в VeloMeter Pro, а его надо покупать за деньги. С другой стороны, VeloMeter можно дорабатывать по своему разумению, создавая собственные схемы «бомбардировки» сервера запросами.

На наш взгляд, уже одно то обстоятельство, что VeloMeter позволяет определить критический уровень для числа пользователей/запросов, служит достаточным основанием для применения этой утилиты.




Комментарии

 Ваш комментарий к данному материалу будет интересен нам и нашим читателям!



Последние статьи: Web - технологии / Серверы /

Сервер отвечает...
23-12-2010   

Коды состояний обычно генерируются Web-серверами, но иногда это могут делать и CGI-сценарии, CGI-сценарии генерируют собственные заголовки вместо тех, которые должен выдавать сервер. Коды состояний группируются следующим образом:... подробнее

Кол. просмотров: общее - 3164 сегодня - 0

Преобразование ссылок с помощью Apache
12-05-2010   

Допустим, у вас есть работающий веб-сайт, состоящий из большого количества статических html-страниц. Целое шагает хорошо, но вдруг в какой-то момент вы решаете усовершенствовать работу веб-сайта и добавляете динамические скрипты: в результате страничка вестей ныне доступна по ссылке http://www.site.com/cgi-bin/news.cgi вместо прежней http://www.site.com/news.html, а каталог, в котором хранились страницы с описанием российских регионов, радикально перекочевал в динамику... подробнее

Кол. просмотров: общее - 3406 сегодня - 1

Настройка Apache
12-05-2010   

Чтобы использовать Apache Configuration Tool (Инструмент настройки Apache) требуется запустить систему X Window под именем root. Запустить Apache Configuration Tool можно следующим способами... подробнее

Кол. просмотров: общее - 3119 сегодня - 0

Классификация статус-кодов HTTP
19-04-2010   

Классификация статус-кодов HTTP 1ХХ - Информационное. Запрос принят, процесс продолжается... подробнее

Кол. просмотров: общее - 3143 сегодня - 0

Установка IIS 7.0. IIS в Windows Vista
18-04-2010   

IIS 7.0 доступно и в Windows Vista почти со всеми устройствами IIS 7.0... подробнее

Кол. просмотров: общее - 3232 сегодня - 0



  WWW.COMPROG.RU - 2009-2012 | Designed and Powered by Zaipov Renat | Projects