RSS Подписка на статьи RSS Подписка на комментарии Панель инструментов

Блог профессионалов стал частью сайта технической поддержки DocsVision http://support.docsvision.com. Новые материалы будут появляться уже на этом сайте.

Поиск

Ярлыки

авто генерация кода (1) Администрирование DocsVision (60) Атрибутивный поиск (3) База данных (24) Базы знаний (1) Безопасность (1) Бизнес-процессы (20) Блог (2) Вы увидите это первыми (1) Групповые политики (1) Диаграммы (2) Задания (2) Интеграция (2) Карточки DocsVision (14) Конструктор Решений (11) Маркетинг и продажи (4) Навигатор (3) Новое (3) Новости (32) Опрос (4) Опросы DocsVision (4) Оптимизация (3) Отчеты (2) Ошибки (1) Поддержка (14) Полезные ссылки (1) Представления (4) Производительность (5) Разбор полетов (18) Разработка для Workflow (7) разработка карточек (2) Разработка на платформе DocsVision (41) Разработка решений (43) Расширение платформы (1) Расширенные отчеты (9) Решения на платформе DocsVision (6) Сервисы DocsVision (3) Сканеры (3) Справочник сотрудников (1) Справочник типов (1) Установка (1) Утилиты (13) Шлюз в SharePoint (8) Штрихкод (2) Cкрипты карточек (7) DocsVision внутри (1) DocsVision Live (1) FileStream (1) FireFox (2) Opera (1) Powershell (5) Safari (1) SharePoint2007 (1) SharePoint2010 (2) Silverlight (1) UltraViews (1) Vista (1)

Эмуляция нагрузки на сервер DV с использованием MS Visual Studio.

Среди программных продуктов существует множество как платных, так и бесплатных специализированных решений для эмуляции нагрузки на WEB-сервера.К сожалению, почти все они не очень хорошо подходят для эмуляции нагрузки на сервер DocsVision. Связано это главным образом с тем, что данные продукты заточены для нагрузочного тестирования WEB-сайтов, а не сложных клиент-серверных приложений, где весь трафик является персонально-зависимым.В данном посте хочу в общих чертах описать процедуру эмуляции нагрузки на сервер с использованием Microsoft Visual Studio Team System.


Данная редакция позволяет создавать Test Project, который среди нескольких типов тестов содержит Load Test (нагрузочный тест). Данный тип теста имеет следующую функциональность – запуск участков кода, объединенных атрибутом [Test Method] во множестве потоков. (То есть эмулировать выполнение этих участков одновременно от имени нескольких виртуальных пользователей). Плюс к этой функциональности, данный тип теста содержит большое число настроек и параметров, для гибкого управления конфигурацией. Сложив вместе сказанное в абзаце выше легко прийти к выходу, что Load Test в Visual Studio позволяет во-первых, создавать нагрузочные тесты для сервера DocsVision, а во-вторых, гибко управлять параметрами данной нагрузки. Вот небольшой пример кода, содержащего два теста – открытие карточки входящего документа и загрузка файла на диск из карточки файла:


[TestClass]
class MyTestClass
{
[TestMethod]
public void OpenCardDocument()
{
UserSession session = this.GetUserSession();
Assert.IsNotNull(session);

// open card
Guid cardID = (Guid)this.TestProperties["InstanceID"];

CardData cardData = session.CardManager.GetCardData(cardID);

// emulate reading data
cardData.SaveXml(new MemoryStream());
}

[TestMethod]
public void OpenCardFile()
{
UserSession session = this.GetUserSession();
Assert.IsNotNull(session);

// open card
Guid cardID = (Guid)this.TestProperties["InstanceID"];

CardData cardData = session.CardManager.GetCardData(cardID);


// emulate reading data
cardData.SaveXml(new MemoryStream());

// download file to disk
DownloadFile(session, cardData);
}
}


TestProperties["InstanceID"] – параметр из конфигурационного файла, соответствующий ID карточки входящего документа и карточки файла соответственно.

Теперь нам осталось только сконфигурировать параметры нагрузки, например так:

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

Данный небольшой обзор не претендует на какую-либо полноту, показана лишь принципиальная возможность эмуляции нагрузки на сервер DocsVision с помощью Visual Studio. Очевидно, что данная среда позволяет эмулировать любые тест-кейсы, сложность и приближенность к реальным юзкейсам зависят лишь от разработчика данных тестов.
Читать дальше

0 коммент.:

Отправить комментарий