Экспорт (0) Печать
Развернуть все

Общие сведения о нагрузочном тесте Visual Studio в Windows Azure

Здесь описываются основные компоненты нагрузочного теста. Общее описание архитектуры приложения см. в разделе Нагрузочное тестирование с агентами, работающими в Windows Azure. Часть 1. Общие сведения о нагрузочных тестах в среде Visual Studio см. в разделе Основные сведения о нагрузочных тестах.

noteПримечание
Этот документ посвящен «практически чистому» решению. Кроме копии Visual Studio, компоненты нагрузочного теста запускаются как рабочие роли Windows Azure. Этому «практически чистому» сценарию есть альтернатива: запуск или размещение какого-либо компонента в смешанной среде. Например, вы можете запустить тестовый контроллер локально, при этом агенты работают на рабочей роли. Или вы хотите использовать База данных SQL Windows Azure для хранения данных нагрузочного теста. Другими словами, можно распределить компоненты нагрузочного теста между ролями Windows Azure и База данных SQL и локальными системами. Дополнительную документацию по выбору и настройке этих альтернативных конфигураций см. в следующем разделе: Запуск нагрузочных тестов в смешанных средах.

Преимущества

Прежде чем продолжить изучать этот обзор, рассмотрим некоторые преимущества использования нагрузочных тестов Visual Studio в Windows Azure.

Начальная стоимость
Стоимость нагрузочных тестов значительно уменьшается после первоначальных инвестиций. Первоначальные расходы — покупка Visual Studio Ultimate и лицензии для использования компонента Load Test. После этого вы создаете окружение нагрузочного теста — проект Visual Studio. Необходима подписка на Windows Azure и возможность для развертывания и выполнения веб- и рабочих ролей по мере необходимости. Эти расходы сопоставимы с затратами на владение оборудованием и всеми сопутствующими расходами. (Затраты включают в себя стоимость программного обеспечения, затраты на электроэнергию, центр обработки данных и людей для обслуживания всей системы.)

Стоимость обслуживания
С помощью описанных здесь процедур можно создать легко обслуживаемое окружение для нагрузочного теста. После создания проекта его обновление в обозримом будущем обновления будет минимальным.

Эластичность
Нагрузочный тест можно легко изменить для реализации различных сценариев и условий. Например, можно настроить размещенный сервер Azure для большего количества рабочих ролей. Каждая роль становится агентом тестирования, который можно использовать для увеличения нагрузки.

Повторяемость
После первоначальных инвестиций можно переориентировать нагрузочный тест на различные предметы тестирования с минимальными временными и материальными затратами. Просто перенастройте тестовый проект и снова разверните его в Windows Azure. Выполняйте тест необходимое время и затем удалите его. Повторите при необходимости.

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

Параллелизм

Параллелизм определяется как свойство системы выполнять несколько задач одновременно и, возможно, взаимосвязанно. Ограничивает параллелизм количеством доступных IP-адресов. Чем больше IP-адресов использует система, тем больше параллелизм при обработке. Как правило, количество адресов зависит от величины вашего поставщика IP-адресов. Если ваше соглашение об уровне обслуживания достаточно масштабное, то для него обычно выделяется большое количество IP-адресов. Однако такие соглашения не слишком распространены. Однако, когда вы применяете Windows Azure в качестве платформы, вы можете использовать центр обработки данных Майкрософт и его ресурсы. К ним относится и большой пул IP-адресов. Размещенным службам Windows Azure назначаются виртуальные IP-адреса. В данном контексте IP-адреса используются средством подсистемы балансировки загрузки, направленным во внешние системы (Интернет), а не размещенными службами. А наличие большого числа адресов является преимуществом центра обработки данных Майкрософт. Учтите также, что не всем системам требуется такой уровень параллелизма. Это является преимуществом только при тестировании системы с высокой степенью параллелизма.

Улучшенные возможности для параллельной обработки — это еще одно большое преимущество выполнения нагрузочных тестов в Window Azure. Такой уровень параллелизма сложно воспроизвести вне крупного центра обработки данных.

Общие сведения

На этом рисунке показаны компоненты нагрузочного теста. Копия Visual Studio Ultimate используется для настройки нагрузочного теста, для его запуска и управления им. В Visual Studio доступно также графическое представление результатов тестирования. К компонентам теста относятся тестовый контроллер, тестовые агенты и тестируемая система. Тестовый контроллер и агенты работают в центре обработки данных Windows Azure как рабочие роли. За исключением тестируемой системы, все компоненты нагрузочного теста должны принадлежать одной группе Windows Azure Connect. Это позволяет компонентам свободно взаимодействовать друг с другом и с экземпляром Visual Studio. Чтобы создать наборы счетчиков производительности, отслеживающих производительность на компьютерах, где размещается тестируемая система, присоедините эти системы к группе Windows Azure Connect.

Тестовая конфигурация с базовой нагрузкой

Нагрузочный тест использует несколько основных технологий. Их функции в нагрузочном тесте описаны далее в этом документе. Полный список необходимых загрузок см. в разделе Необходимые компоненты и настройка нагрузочного теста Windows Azure.

Портал управления Azure

Портал управления используется для создания основных структур, используемых для нагрузочного теста, и управления ими. В частности, используются следующие компоненты Azure:

Размещенная служба Azure
Создайте размещенную службу для запуска приложения нагрузочного теста. Приложение состоит из двух рабочих ролей. Первая роль содержит один экземпляр тестового контроллера. Контроллер позволяет удаленно выполнять нагрузочный тест. Вторая роль используется для размещения одного агента. Вы можете использовать функцию создания экземпляров Azure для создания стольких экземпляров роли агента, сколько вам нужно. Дополнительные сведения см. в статье Как масштабировать приложения, увеличивая и уменьшая число экземпляров роли.

Учетная запись хранения
Вам нужна учетная запись хранения Windows Azure для хранения сжатого кода, который выполняется в рабочих ролях. В больших двоичных объектах хранилища содержатся три ZIP-файла. В одном файле хранится программа установки SQL Express. Во втором — код контроллера. В третьем файле содержится код агента. Дополнительные сведения о создании учетной записи хранения см. в статье Как создать учетную запись хранения для подписки Windows Azure.

Группа Connect
Создайте группу Connect для обеспечения связи между контроллером и агентом. Компонент Connect работает как виртуальная частная сеть, которая позволяет контроллеру управлять деятельностью агентов. Он также позволяет агентам возвращать результаты тестирования контроллеру. Группа Connect также позволяет запускать контроллер из локальной копии Visual Studio. Дополнительные сведения см. в разделе Общие сведения о Windows Azure Connect.

Кроме того, передайте на портал Azure два сертификата X.509. Эти сертификаты необходимы для аутентификации и шифрования потоков данных между локальным компьютером и порталом Azure. Первый сертификат используется для обеспечения публикации приложения из Visual Studio непосредственно в Azure. Этот сертификат согласно терминологии Azure называется сертификатом управления. Второй сертификат используется для обеспечения соединения удаленного рабочего стола между локальным компьютером и рабочей ролью Azure. Этот сертификат согласно терминологии Azure называется сертификатом службы.

Visual Studio Ultimate

Visual Studio — это среда разработки и это единственная версия, которая предоставляет функции нагрузочного тестирования. Сравнение версий Visual Studio см. в статье Сравнение Visual Studio 2010. С помощью Visual Studio Ultimate можно создавать тестовые скрипты для нагрузочного тестирования приложения.

Visual Studio также позволяет удаленно управлять контроллером. В сценарии без использования Azure удаленный контроллер работал бы на другом компьютере. При использовании Azure контроллер работает в рабочей роли в облаке.

Выпуск SQL Server 2012 Express

Для сбора и хранения данных от агентов требуется база данных. К счастью, SQL Server 2012 Express — это бесплатный выпуск, а программа нагрузочного тестирования использует его по умолчанию. Требуется, чтобы ядро СУБД также разворачивалось в рабочей роли, в которой в свою очередь работает контроллер программы. Установка производится с помощью кода в методе RoleEntryPoint.OnStart.

Файлы данных SQL не могут находиться на виртуальном жестком диске рабочей роли, потому что они будут утеряны при утилизации роли. Рекомендуется подключить общий диск для всех ролей, чтобы записывать на него данные. Дополнительные сведения см. в статье Использование SMB для общего доступа к диску Windows Azure нескольких ролей.

Другой альтернативой является использование База данных SQL. Загрузите файл loadtest2010.dacpac для подготовки База данных SQL с базой данных. Дополнительные сведения см. в разделе Запуск нагрузочных тестов в смешанных средах.

Сбор необходимых компонентов

Для начала загрузите программное обеспечение, необходимое для подготовки портала Azure и настройки приложения. Сведения о загрузке см. в следующем разделе: Необходимые компоненты и настройка нагрузочного теста Windows Azure.

Подготовка Windows Azure и настройка приложения

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

  1. Настройте портал Windows Azure с новой размещенной службой, учетной записью хранения и виртуальной сетью Connect.

  2. После создания хранилища и учетных записей размещенной службы используйте значения из портала Windows Azure для настройки приложения.

  3. Создайте три ZIP-файла с программным обеспечением, которое автоматически устанавливается в рабочих ролях.

    Для приложения требуется, чтобы и контроллер, и программное обеспечение агента выполнялись в рабочих ролях. Программное обеспечение для создания контроллера и агентов уже готово и доступно для загрузки. Чтобы разместить программное обеспечение в рабочих ролях, используется один подход. Сначала создайте два ZIP-файла, которые содержат программное обеспечение тестового контроллера и агента. Для создания ZIP-файлов используйте средство по вашему выбору (есть бесплатные версии). После создания ZIP-файлов передайте их в вашу учетную запись хранения Windows Azure. После запуска приложения ZIP-файлы извлекаются из хранилища, распаковываются и загружаются в рабочие роли.

    Необходимо создать и третий ZIP-файл: он будет содержать пакет установки SQL Server 2008 SQL Express. Как и для пакетов контроллера и агента, программа установки SQL Server автоматически запускает и развертывает экземпляр SQL Express в рабочей роли.

  4. Передайте ZIP-файлы в учетную запись хранения Azure. Для этой задачи используйте программу Storage Service Client, которую можно загрузить бесплатно.

  5. Создайте группу Windows Azure Connect на портале Windows Azure.

  6. Установите конечную точку Connect на компьютер, который используется для подключения к роли контроллера.

  7. Настройте приложение с использованием токена активации Connect. Этот токен позволяет рабочим ролям присоединиться к группе Connect.

Публикация приложения

После правильной подготовки и настройки портала и приложения вы можете опубликовать приложение в Windows Azure. Подробные инструкции см. в разделе Публикация нагрузочного теста в Windows Azure.

  1. Получите идентификатор подписки Windows Azure Данный идентификатор используется, чтобы среда Visual Studio могла передать приложение в вашу учетную запись.

  2. Создайте и загрузите сертификат управления. Для этого выполните следующие действия.

    1. В диалоговом окне Публикация в Windows Azure создайте сертификат управления. Этот сертификат позволяет Windows Azure выполнять авторизацию при передаче приложения.

    2. Вставьте идентификатор подписки в диалоговое окно. Этот идентификатор позволяет Visual Studio идентифицировать вашу учетную запись.

  3. Экспортируйте сертификат управления. Чтобы передать сертификат, экспортируйте его из локального кэша сертификатов компьютера.

  4. Передайте сертификат управления. Для передачи сертификата используйте портал управления.

  5. Публикация приложения.

Использование удаленного рабочего стола

После публикации приложения для подключения к нему используется удаленный рабочий стол. Visual Studio предоставляет средства и возможности для использования этой функции. Описание шагов по соединению с удаленным рабочим столом см. в разделе Публикация нагрузочного теста в Windows Azure

Следующие шаги

Для начала загрузите средства и компоненты решения. Необходимые компоненты и настройка нагрузочного теста Windows Azure


Дата сборки:

2013-07-25

Добавления сообщества

Показ:
© 2014 Microsoft