Недавний законодатель в области стандартных тестовых методик - компания SPEC (Standard Performance Evaluation Corp.) объявила о выпуске нового тестового набора SPECweb96, предназначенного для измерения производительности серверов World Wide Web. До сегодняшнего дня единственным, более-менее объективным и признанным рядом производителей тестом являлся WebStone. В этом году группа Open Systems Group (OSG) в содружестве с основными производителями программных и аппаратных систем для Всемирной Паутины (CommerceNet, DEC, HAL Computer Systems, Hewlett-Packard, IBM, Intel, Netscape, OpenMarket, SNI, Silicon Graphics, Spyglass и Sun) выпустила стандартный набор тестов, который, надеюсь, станет общепризнанной шкалой оценки конфигурации одной из наиболее популярных сегодня систем, коей является Web-сервер. В отличие от других тестов, направленных на оценку производительности систем, работающих с Паутиной, SPECweb96 стандартизирован, что гарантирует производителям оборудования, системным интеграторам, университетам, исследовательским фирмам, издательским и консалтинговым компаниям получение объективных и унифицированных показателей.
Основная направленность SPECweb96 - оценка производительности при работе со статическими страницами Web, выраженная в способности сервера отвечать на запросы протокола HTTP. Один или несколько клиентов используют комплект SPECweb96 для формирования запросов к серверу, а специальная программа измеряет время обработки каждого такого запроса. Результатом тестирования является метрика - пропускная способность, выражаемая через максимальное число операций, выполненных в секунду.
Текущая версия SPECweb96 Release 1.0 пока предназначена только для оценки производительности серверов и не включает методик измерения возможностей Web-клиентов, связки Web-клиент/Web-сервер или пропускной способности WAN. Тексты тестов SPECweb96 можно найти на сервере SPEC, где также раз в две недели помещаются новые данные по результатам тестирования различных конфигураций. Эта информация будет не только полезна для оценки работы Web-серверов, но и позволит определить эффективные аппаратно-программные конфигурации для систем, решающих задачи шифрования, обработки запросов CGI и поддержки задач мультимедиа.
Особенности теста
Для имитации загрузки сервера в тесте SPECweb96 моделируется ситуация предоставления провайдером Web различных услуг - обычно это ведение домашних страниц организаций. Каждая страница представляет собой набор файлов различного размера - от маленьких пиктограмм до больших изображений. Так же, как и в реальной действительности, некоторые файлы пользуются большей популярностью по сравнению с другими. В текущей версии SPECweb 1.0 предусмотрена работа со статическими страницами, а моделирование динамического доступа предполагается включить в следующие версии.
Основа SPECweb96 - это запрос "get" протокола HTTP для четырех классов файлов: менее 1 Кбайт, от 1 до 10 Кбайт, от 10 до 100 Кбайт и от 100 Кбайт до 1 Мбайт. Качество доступа к участкам файлов определяется путем анализа соединений, выполненных Web-сервером. Около 35% обращений приходится на небольшие файлы, 50% на файлы из второго класса, 14% на файлы размером 10-100 Кбайт и один процент на большие файлы. Внутри каждого класса применяется нелинейное распределение частоты доступа, что позволяет имитировать фактор популярности различных файлов. Мощность тестируемого Web-сервера определяется числом файлов из разных классов, которые в состоянии обработать компьютер за единицу времени. Максимальная производительность измеряется до тех пор, пока сервер еще способен обрабатывать поступающие запросы - показатель загрузки равен пропускной способности.
Текущая версия SPECweb96 пока имеет некоторые ограничения - не учтены внешние факторы, а именно: временные задержки, связанные с обращением к сети и определяемые различными физическими причинами. Кроме того, тест предназначен только для оценки сервера. Однако, несмотря на имеющиеся в первой версии недостатки, предложенная методика позволяет сравнивать результаты, полученные в различных условиях работы.
Состав тестов
В комплект SPECweb96 входят исходные тексты программ-драйверов: и наборы файлов, имитирующих работу реальных домашних страниц, размещенных на Web-сервере. Обладая всеми необходимыми текстами, пользователь имеет возможность собрать у себя необходимую конфигурацию для проведения тестирования. При этом он использует инструментальные средства, также включаемые в комплект поставки. В состав SPECweb96 не входит программное обеспечение Web-сервера. В этом качестве может использоваться любой пакет, поддерживающий HTTP/1.0. Кроме этого, допускается применение разнообразных свободно распространяемых программ типа Apache. В комплект SPECweb96 CD-ROM входят драйверы для сред Windows NT и Posix Unix.
Для проведения тестирования естественно необходимо иметь компилятор ANSI C, можно также использовать интерпретатор Perl5 для запуска различных инструментальных средств формирования результатов. При работе с NT требуется поддержка протокола REXEC для взаимодействия со многими клиентами - собственно эта возможность реализуется в SPEC средствами свободно распространяемых программ.
Метрикой теста является количество реально выполненных соединений и среднее время отклика при обработке запроса. Результаты сводятся в таблицу, которая представляется также в виде кривой изменения производительности сервера - начиная от простого запроса и кончая максимально возможной загрузкой, для обработки которой требуется недопустимо много времени. Согласно требованиям SPECweb96, для построения этой кривой должно быть использовано не менее 10 точек в диапазоне от нуля до максимально возможного значения.
Отчет по SPECweb96 Release 1.0 генерируется в формате ASCII и HTML соответствующими средствами SPEC. Кроме кривой производительности, которая, по мнению SPEC, предоставляет исчерпывающую информацию, в отчет должна быть включена и другая информация:
- собственно значение SPECweb96;
- пиковая пропускная способность по каждой точке (число операций в секунду), отражающей различные условия нагрузки; подробное описание аппаратной конфигурации сервера (производитель, наименование модели, тип процессора, параметры оперативной памяти и периферии, тип файловой системы);
- конфигурация программного обеспечения сервера (версия Web-сервера, ОС, перечень вспомогательных пакетов, используемых для тестирования); конфигурация сети (тип сетевых контроллеров, тип сети, базовая скорость сети);
- параметры генератора загрузки (количество клиентов, число одновременно работающих процессов, описание конфигурации клиентов).
Первые результаты
Как уже отмечалось, для оценки Web-серверов сегодня уже имеются критерии, полученные по методике WebStone, с которыми, правда, показатели, вычисленные по SPECweb96, никак не коррелируются. Несмотря на то что оба теста используют одну метрику - количество операций HTTP в секунду,- невозможно провести сравнение путем простого взаимного пропорционального приведения результатов WebStone и SPECweb96. Это происходит вследствие того, что в основу SPECweb легли большие файлы, обработка которых предусматривает более интенсивное использование памяти и подсистемы ввода/вывода компьютера.
Полных данных по компьютерам всех производителей, предлагающих свои решения для Web-серверов, пока не получено, однако первые данные по HP K400 и Digital 1000A/266 можно привести уже сейчас (таблица 1).
Таблица 1. Данные SPECweb96 (август 1996)
|
|
|
|
|
|
|
|
|
|
|
|
Так же, как и все семейство тестов SPEC, новый комплект SPECweb96 не дает однозначного ответа на вопрос, чей сервер сегодня самый лучший, однако итоги тестирования позволяют выделить группы конфигураций, удовлетворяющих требованиям, предъявляемым к Web-серверу. Регулярно публикуемые результаты тестирования помогут наметить границы требований, выход за пределы которых для конкурирующих систем равносилен исчезновению с весьма перспективного на сегодняшний день рынка Web-серверов.
Кроме того, в ряде случаев SPECweb96 позволит определить наиболее эффективную конфигурацию для решения конкретных задач. Например, из приведенных рисунков видно, что Web-сервер на базе K400 можно включать в состав узлов Internet средней загруженности, в то время как AlphaServer 1000А в данной конфигурации будет весьма эффективен в качестве корпоративного Web-сервера, работающего в режиме intranet. Анализ графиков для двух- и четырехпроцессорных конфигураций AlphaServer 2100 5/300 также дает пищу для размышлений о применимости многопроцессорных систем в каждом конкретном случае. С одной стороны, система 5/300/4 имеет более высокую пропускную способность, весьма полезную при построении популярных Web-серверов Internet, однако среднее время отклика для двухпроцессорной системы 5/300/2 оказывается предпочтительней.
При переходе на более прогрессивные методики, учитывающие динамику и позволяющие анализировать не только возможности сервера, будет сохраняться преемственность результатов, а само наименование теста будет трансформироваться как SPECweb97a.
C Дмитрием Волковым можно связаться по телефону: (095) 529-1551.