Ж у р н а л   о   к о м п ь ю т е р н ы х   с е т я х   и   т е л е к о м м у н и к а ц и о н н ы х   т е х н о л о г и я х
СЕТИ И СИСТЕМЫ СВЯЗИ on-line
  ПОИСК: ПОДПИСКА НА НОВОСТИ: НОМЕР:
    ДОМОЙ • Архив: Новостей | Конференций | НомеровПодписка
 
   
 
   
    
РЕДАКЦИЯ
 
Все о журнале
Подписка
Как проехать
Где купить
Отдел рекламы
График выхода журнала
Адреса в Интернет

РУБРИКАТОР
   
• Инфраструктура
• Информационные
   системы

• Сети связи
• Защита данных
• Кабельные системы
• Бизнес
• Колонка редактора
• Электронная
   коммерция

• Только на сервере
• Системы
   учрежденческой
   связи

• Новые продукты


Rambler's Top100

  

Как стать уверенным в своем Web-сайте

Майкл Дж. Демариа

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

Чтобы добраться до источника проблемы, следует протестировать сквозную производительность вашего сайта. Затем вам нужно определить причину перегрузки Web-сайта, будь то недостаточно производительный сервер, медленный маршрутизатор или какое-то другое "узкое" место.

Полную версию данной статьи смотрите во 4-ом номере журнала за 2003 год.

Прежде всего план

До начала испытаний определитесь, какую информацию вы хотите получить от тестов на производительность. Не стоит проверять, сможет ли сайт выдержать нагрузку в 45 Мбит/с - такую полосу пропускания теоретически может занять и один пользователь. Вместо этого обдумайте ситуации, которые сложно воспроизвести в тесте. Например: сможет ли ваш сайт обработать одновременно 10 000 запросов от разных пользователей? сколько времени пользователь будет ждать загрузки страницы, если в это время 5000 других пользователей совершают запросы в базу данных?

Полезный тест для измерения сквозной производительности - это проверка функциональности, т. е. является ли только что загруженная Web-страница действительно существующей или это просто страница с сообщением об ошибке - таким образом можно узнать, когда для вашего Web-сервера сервер баз данных недоступен. Быть уверенным в том, что Web-сервер может прекрасно обрабатывать 1 млн соединений, прекрасно. Но вряд ли вас обрадует известие, что 40% этих соединений просто содержат сообщения об ошибках SQL.

При тестировании сайта постарайтесь использовать максимально реалистичный трафик. Загрузите обычную страницу или выполните несколько запросов или операций занесения данных в базу данных. Простой инициализации TCP "open" и "close" недостаточно, кроме, к примеру, тестирования межсетевого экрана Уровня 4, когда от контента почти ничего не зависит. Но, если вы тестируете устройства Уровня 7, нужны реальные данные.

Чтобы получить достоверные результаты, действуйте так же, как пользователь. "Прогуляйтесь" по сайту, выполняя одновременно несколько задач и оставив некоторое время "на раздумья". Пользователь не может за секунду загрузить сложную Web-форму, заполнить ее и отправить, поэтому перед подтверждением правильности заполнения формы подождите несколько секунд или минут, чтобы тест получился по-настоящему репрезентативным.

Выбор подходящего инструмента для тестирования может оказаться непростой задачей. Они различаются по функциональности (см. таблицу) и цене. В некоторых случаях для испытаний вам потребуется приобрести как программные, так и аппаратные продукты. Вы можете опробовать измерительные инструменты, выпускающиеся по лицензиям shareware, freeware и cheapware, но в них могут отсутствовать некоторые важные функции.

Будем реалистами

В реалистичном тесте также задействованы несколько типов трафика и сценарии действий пользователя. То, какие протоколы вы тестируете, зависит от предлагаемых вашим сайтом услуг. Для Интернет-теста, к примеру, вам могут потребоваться только HTTP и HTTPS. Но, если у вас установлен межсетевой экран Уровня 7 и самыми часто используемыми протоколами являются HTTP, FTP, DNS и SMTP, нужно протестировать межсетевой экран со всеми этими типами трафика.

И лучше вести тестирование, так сказать, с "запасом", поскольку трафик имеет свойство резко возрастать в некоторые периоды времени. Таким образом, испытываемый узел не выйдет из строя и вы узнаете его предельные характеристики до того, как оно откажет. Поэтому начните со 100 соединений, потом задействуйте 500, потом - 1000 и т. д. Трафик будет прибывать на ваш сайт порциями - иногда это подтверждения об установлении связи, иногда передаваемые данные, иногда разрыв соединений.

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

Расчет установившейся скорости передачи, которую может поддерживать ваш сайт, зависит от установок теста. Что вы тестируете - поведение системы при максимальном количестве TCP-соединений или при максимальном количестве пользователей? Один пользователь может создать несколько сеансов TCP, "бродить" по сайту в рамках одного сеанса TCP или на короткие периоды времени вообще прекращать все сеансы TCP. Следует узнать, каково типичное поведение пользователей на вашем сайте. Прочитывают ли они до конца длинные страницы с текстом или быстро просматривают страницы сайта?

Испытания Web-сервера должны определить максимальное количество одновременно поддерживаемых TCP-соединений, методов GET в секунду и время отклика. Количество методов GET в секунду означает, насколько быстро выполняется сеанс отдельного пользователя. Время отклика покажет, сколько времени занимает в действительности транзакция. Протестировать эти характеристики может оказаться очень непросто. Вспомните о различии между версиями протоколов HTTP 1.0 и HTTP 1.1. Новая версия HTTP поддерживает "keepalive", поэтому вам понадобится только одно соединение, в то время как версия 1.0 требует один метод GET на каждый элемент страницы. В старых браузерах используется версия 1.0 - помните об этом, когда будете определять максимальное число пользователей, поддерживаемых вашим сайтом. Здесь самым лучшим способом будет провести тестирование смешанного трафика http 1.0 и 1.1 и удостовериться, что инструмент тестирования загружает все объекты, а не только главную страницу. В противном случае вы не получите достоверных результатов.

В то же самое время тестирование приложений и простой Web-тест - разные вещи. Скачивание списка top stories с сайта www.techweb.com, к примеру, - это не более чем получение страницы с несколькими объектами. А вот испытание Web-приложений на сайте потребует от вас осуществить несколько шагов, включая заполнение форм.

Не забывайте о том, что пользователи попадают на ваш публичный Web-сайт через Интернет, а не через локальную сеть. Может быть для кого-то это и очевидно, но не забудьте обратить внимание на то, в каких условиях ваш тест выполняется. Если он выполняется на скорости 100 Мбит/с и 2-мс задержкой, то такой способ измерения нельзя назвать реалистичным, ведь большинство пользователей выходят в Интернет по каналам со скоростью менее 2 Мбит/с, и даже в США наиболее распространен коммутируемый доступ. Задержка может быть различной, у пользователей модемов ожидайте минимум 200-мс задержку двусторонней передачи на пакет. Если между клиентом и сервером совершается множество транзакций, задержка может легко добавить лишние несколько секунд. Это создаст дополнительную нагрузку на очереди отправки и получения (хотя вы можете оптимизировать их с целью увеличения производительности).

Большинство тестовых инструментов могут имитировать узкую полосу пропускания. Но если вы хотите сымитировать задержки или потерю пакетов в каком-нибудь месте до конечных узлов, вам потребуется специальное устройство, вроде Shunra Software Storm. Не забудьте протестировать на отказоустойчивость межсетевой экран, маршрутизатор Интернет и остальные устройства, находящиеся между ними (см. "Сквозное тестирование: шаг за шагом").

Проводим обновление

Если вы примете решение о модернизации Web-инфраструктуры или об ее изменении, руководствуясь результатами сквозного тестирования, постарайтесь не переусердствовать в этом. Предположим, у вас есть Web-сервер, на который приходится примерно 1 млн посещений в месяц. Однажды ваш сайт упоминают в передаче национального телевидения, и неожиданно трафик возрастает до 1 млн посещений за несколько часов. Это еще не служит поводом к реконструкции сайта, чтобы он мог справиться с таким объемом трафика: покупка слишком большого количества оборудования и большей, чем вам нужно, полосы пропускания - пустая трата денег.

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

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





  
4 '2003
СОДЕРЖАНИЕ

бизнес

• Анализ возврата инвестиций

• Открытый источник инноваций. Интервью Сергея Тарасова

• Кто проложит русло широкополосному потоку

• Российский ИТ-рынок считает доходы

• Еще раз об экономике контакт-центров

инфраструктура

• Тестируем коммутаторы Fibre Channel среднего класса

информационные системы

• Спектр электронных покупателей

• Нужны ли публичные Web-службы?

• Как стать уверенным в своем Web-сайте

сети связи

• Передача голоса поверх IP, ATM и DSL

• Системы DWDM: особенности и применение

• Fast Ethernet в кольце

кабельные системы

• Новое поколение оптических рефлектометров

• Тональные генераторы и щупы — простые, но важные инструменты

защита данных

• Основы безопасности ИТ

• Тактика защиты информации

новые продукты

• Консольные серверы Digi СМ, Система широкополосного радиодоступа i-BRAIN


• Калейдоскоп



 Copyright © 1997-2007 ООО "Сети и Системы Связи". Тел. (495) 234-53-21. Факс (495) 974-7110. вверх