• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Нагрузочное тестирование клиент-серверных приложений
 

Нагрузочное тестирование клиент-серверных приложений

on

  • 2,758 views

Алексей Якимович, IBA, Минск, Беларусь

Алексей Якимович, IBA, Минск, Беларусь

Statistics

Views

Total Views
2,758
Views on SlideShare
2,743
Embed Views
15

Actions

Likes
0
Downloads
18
Comments
0

1 Embed 15

http://www.slideshare.net 15

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Нагрузочное тестирование клиент-серверных приложений Нагрузочное тестирование клиент-серверных приложений Presentation Transcript

    • Нагрузочное тестирование клиент- серверных приложений Алексей Якимович. IBA
    • Пилотный проект по нагрузочному тестированию Lotus Notes Бизнес цель проекта: Нужно организовать нагрузочное тестирование клиент-серверного ПО на платформе Lotus Notes, чтобы понять и улучшить характеристики системы. Цели пилотного проекта: 1. Понять существует ли техническая возможность проведения нагрузочного тестирования. 2. Создать тестовый стенд, на котором можно провести испытания производительности. 3. Написать программные скрипты, эмулирующие реальные действия пользователя и понять особенности написания скриптов для терминалов. 4. Провести пробное нагрузочное испытание с небольшим количеством виртуальных пользователей, чтобы доказать принципиальную возможность проведения нагрузочных испытаний для большого количества пользователей и понять связанные с этим проблемы. 5. Понять требования к программному и аппаратному обеспечению для создания тестового стенда, эмулирующего работу большого количества пользователей.
    • Проблемы нагрузочного тестирования клиент-серверного ПО Написание нагрузочных скриптов для клиент-серверных приложений технически и организационно является сложной задачей: 1. Трафик между клиентом и сервером может не обрабатываться приложениями по нагрузке (например, он может быть зашифрован). 2. Распознавание интерфейса для некоторых видов приложений не возможно из за отсутствия библиотек распознавания. 3. Обработка протоколов трафика или библиотеки распознавания интерфейса должна быть либо разработана с нуля либо куплена.
    • Терминальное ПО как решение проблем распознавания интерфейса Решением проблем нагрузочного тестирования клиент-серверного ПО является использование терминального ПО. В этом случае интерфейс “стандартизируется” терминальным ПО.
    • Терминальный сервер Сitrix XenApp Виртуализация приложений на стороне сервера абстрагирует пользовательский интерфейс от логики выполнения приложения.
    • Тестовый Стенд Ограничения тестового стенда: 1. OC на XenApp сервере была 32х битной, что ограничило возможности расширения памяти. -> Для реального стенда нужна 64- битная ОС 2. Для каждого приложения Lotus Notes на сервере XenApp нужно от 50Мb памяти. 3. Сеть была 100Мбит/с -> Для реального стенда нужна будет 1Gbit/c сеть. 4. Ограничение графических ресурсов генератора нагрузки. Безопасно запускать 20-40 пользователей на одном генераторе.
    • IBM Performance Tester - написание нагрузочных скриптов Что показало написание нагрузочных скриптов для Сitrix: 1. Только штатный выход из приложения. Lotus - это не web приложение, когда браузер можно закрыть в любой момент. 2. Элементы интерфейса не распознаются, взаимодействие идет по координатам. 3. Распознавание и синхронизация страниц замедляют выполнение скрипта, но улучшают выполнение скриптов. 4. Нужно избегать использование мыши,когда это возможно. 5. Скрипты должны быть достаточно простыми и тестировать только определенную функциональность. 6. Отсутствие распознавания элементов интерфейса приводит к тому, что запись и отладка скриптов нагрузки занимает в 3-4 раза больше времени, чем, например, для web приложений.
    • IBM Performance Tester – нагрузочное тестирование Что показало показало нагрузочное тестирование Lotus: 1. Нельзя использовать синхронизацию действий виртуальных пользователей (rendezvous points). 2. Количество виртуальных пользователей ограничено графическими ресурсами компьютера. Рекомендуется записывать скрипты нагрузки для маленьких размеров экрана и небольшого количества цветов. 3. Из видов нагрузочного тестирования измерение времени отклика для различного количества виртуальных пользователей было наиболее востребованно и просто получить. 4. Результаты тестирования показали, что время отклика было от 1.5 до 5 секунд, что является хорошим результатом.
    • Выводы 1. Виртуализация приложений с помощью терминального ПО позволяет проводить нагрузочное тестирование для любых клиент-серверных приложений. 2. Для запуска большого количества одновременно работающих клиентов нужно создавать высокопроизводительный тестовый стенд. 3. Поскольку нагрузочное ПО работает с интерфейсом на низком уровне, то существуют ограничения на создание и выполнение нагрузочных скриптов.
    • Вопросы ?
    • Контактная информация AliakseiYakimovich@iba.by