Научная статья на тему 'Исследование сервиса передачи данных с использованием шаблонов1'

Исследование сервиса передачи данных с использованием шаблонов1 Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
165
53
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
БАЗА ДАННЫХ / ВЕБ-ПРИЛОЖЕНИЕ / СЕРВЕР / XML / DATA BASE / WEB-APPLICATION / SERVER

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Суханов Владимир Иванович, Тимошенко Сергей Иванович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

THE RESEARCH OF SERVICE DATA TRANSFER USING PATTERNS

The article presents the results of stress testing of the service data transfer using templates

Текст научной работы на тему «Исследование сервиса передачи данных с использованием шаблонов1»

УДК 004.4: 004.9: 528.9: 912.43 UDC 004.4: 004.9: 528.9: 912.43

ИССЛЕДОВАНИЕ СЕРВИСА ПЕРЕДАЧИ THE RESEARCH OF SERVICE DATA ДАННЫХ С ИСПОЛЬЗОВАНИЕМ TRANSFER USING PATTERNS

ШАБЛОНОВ1

Суханов Владимир Иванович Sukhanov Vladimir Ivanovich

д.т.н., доцент Dr.Sci.Tech., associate professor

Тимошенко Сергей Иванович Timoshenko Sergey Ivanovich

к.т.н., доцент Cand.Tech.Sci., associate professor

Уральский федеральный университет, Ural Federal University, Yekaterinburg, Russia

Екатеринбург, Россия

Приводятся результаты нагрузочного The article presents the results of stress testing of

тестирования сервиса передачи данных с the service data transfer using templates

использованием шаблонов

Ключевые слова: XML, БАЗА ДАННЫХ, Keywords: XML, DATA BASE,

ВЕБ-ПРИЛОЖЕНИЕ, СЕРВЕР WEB-APPLICATION, SERVER

Введение

Разработка сервисов передачи данных с использованием шаблонов требует изучения их работоспособности и устойчивости при эксплуатации в высоконагруженных серверах хранилищ. Шаблоны описывают структуру запросов на извлечение и пополнение данных хранилища, позволяющие дистанционно управлять информационными ресурсами пользователей для хранения, обмена и обработки данных нереляционного типа [1].

В публикации [2] приведены основные принципы создания сервиса передачи данных с использованием шаблонов, основанных на формате XML-документов. Ниже на рисунке 1 приведена архитектура эксперимен тального образца программного обеспечения (ЭО ПО), который реализует описанные принципы. ЭО ПО строится как набор сервисов, объединенных общим репозиторием. Размещение сервиса в облаке может быть обеспечено договором на аренду облачной инфраструктуры в виде набора виртуальных машин, укомплектованных операционной системой семейства

1 Работа поддерживается Министерством образования и науки Российской Федерации, ГК №

14.514.11.4002 (шифр 2012-1.4-07-514-0061 -007).

http://ej.kubagro.ru/2013/05/pdf/29.pdf

Ьншх, свободной СУБД PostgreSQL, серверами проксирования и балансировки нагрузки.

Сервис работы С репозиторием

Сервис подготовки з апроса

Сервис исполнения запроса

Сервис подготовки ХМ1_Бс11ета

Сервис загрузки докумен тов

Репозиторий

данных

Рисунок 1 - Архитектура ЭО ПО

В состав ЭО ПО входят следующие сервисы для обслуживания основных функций:

a) Сервис работы с репозиторием позволяет администратору базы данных (БД) поддерживать информационное обеспечение в актуальном состоянии. Реализован модулем администрирования, предназначенным для настройки прав доступа пользователей к функциональности ЭО ПО.

b) Сервис подготовки запроса позволяет пользователям создавать и загружать в БД запросы на извлечение информации из хранимых

документов как из репозитория, так и размещённых в облачных хранилищах пользователей (показаны как БД в облаке). Реализован в модуле аутентификации и авторизации пользователей предназначенный для персонализированной работы пользователей и защиты от несанкционированных доступов.

c) Сервис подготовки XML-схем позволяет создавать шаблоны передаваемых данных, используемые для синтаксического контроля поступающих от разных источников XML-доку ментов. Реализован в модуле пользовательской функциональности, предназначенным для обеспечения доступа пользователей к функциям ЭО ПО.

d) Сервис загрузки документов позволяет пользователям в диалоге или внешним прикладным системам по протоколам SOAP и REST загружать в модуль базы данных содержимое документов, доступных для клиентов сервиса. Реализован в модуле передачи данных другим системам по разработанным шаблонам передачи бизнес-данных, предназначенным для передачи хранимых бизнес-данных.

e) Сервис исполнения запросов позволяет пользователям получать выборки информации из документов, удовлетворяющей условиям, сформулированным в запросе на языке Xquery. Реализован в модуле пользовательского веб-интерфейса, предназначенный для обеспечения web-доступа пользователей к функциональности ЭО ПО.

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

1 Средства исследования ЭО ПО сервиса передачи данных с использованием шаблонов

ЭО ПО представляет собой типичную систему массового обслуживания (СМО, см. рисунок 2). На вход системы поступают запросы от пользователей. Запросы выстраиваются сервером приложений в очередь, и постепенно обрабатываются в потоках с 1-го по Ы-й.

Рисунок 2 - Система массового обслуживания

Для оценки временных характеристик ЭО ПО необходимо было провести нагрузочное тестирование средств доступа корпоративных приложений к информационным ресурсам хранилища документов. Его можно провести с использованием различных инструментальных средств, таких как ЛЧйег, ОрепБТА и других.

ОрепБТА [3] представляет собой бесплатную свободно-распросгра няемую систему для проведения распределенного нагрузочного тесгиро вания и мониторинга веб-приложений. В состав системы входят компоненты для создания и редактирования сценариев тестов, компоненты управления тестами и компоненты для организации взаимодействия различных хост-компьютеров системы в процессе выполнения распределен ных тестов.

ОрепБТА имеет гибкие средства для создания тестов, управления логикой работы сценария теста Для упрощения создания первоначального сценария имеется функция

записи реальной последовательности действий экспериментатора через браузер при общении с испытуемым сервером. Управление логикой работы сценария использует SCL -Script Control Language. OpenSTA позволяет моделировать и модифицировать код записанных ранее HTTP-запросов, передаваемых веб-приложению, чтобы сформировать требуемый уровень нагрузки за счет задания параметров времени и числа виртуальных пользователей, от имени которых будет формироваться поток запросов на сервер.

В ходе выполнения тестов OpenSTA позволяет осуществлять мониторинг удаленной системы, на которой работает веб-приложение с помощью так называемых коллекторов (Collector) для различных вариантов исполнения сервера: для агентов SNMP или для серверов под управлением операционных систем (ОС) семейства MS Windows. По результатам теста доступны различные отчеты. Результаты и статистика обработки запросов сохраняется в файлах, которые могут просматриваться в среде OpenSTA и экспортироваться в различных форматах в другие системы для анализа и печати. OpenSTA позволяет выполнять различные виды работ:

a) нагрузочное тестирование;

b) стресс-тестирование;

c) функциональное тестирование;

d) мониторинг доступности.

Система тестирования Apache JMeter [4] является Java-приложением, разработанным для нагрузочного тестирования клиенг/серверных веб-приложений. Она может тестировать исполнение как статических так и динамических ресурсов (см. http://jmeter.apaclie.org/). Например, статические файлы, Java Servlets, сценарии CGI, объекты Java, базы данных, серверы FTP и другие. JMeter может быть использован для имитации тяжелой стрессовой нагрузки на сервере, сети или объекте или для анализа общей работы под другими типами нагрузки. JMeter предъявляет следующие минимальные требования:

a) требует полностью совместимую JVM 1.4 или выше;

b) протестирован под следующими ОС:

• Unix (Solaris, Linux, и т.п.);

• Windows (98, NT, ХР, и выше);

• OpenVMS Alpha 7.3+.

2 Организация тестирования ЭО ПО сервиса передачи данных с использованием шаблонов

Учитывая, что основной тестируемый продукт разработан в технологии J2EE, и желаемую независимость от платформы ОС, предпочтение в выборе инструмента для нагрузочного тестирования было отдано системе Apache JMeter. Тестирование выполнялось инструментом нагрузочного тестирования JMeter, установленным на стороне пользователя.

Для тестирования использовались следующие технические средства:

c) Клиентская часть: персональный компьютер с процессором Pentium 4 2 гГц, оперативной памятью DDR II 1 Гб, жестким диском SATA(2) 100 Гб.

d) Серверная часть: сервер с процессором 2 х Intel Хеоп ЗГГц, оперативной памятью DDR II, 2x2Гб, жестким диском SATA(2) 100 Гб.

Помимо ЭО ПО сервиса передачи данных с использованием шаблонов, были установлены следующие программные средства:

e) Клиентская часть: ОС Windows 7, браузер Firefox 10.

f) Серверная часть: ОС Red Hat Enterprise Linux 6.

Для выполнения нагрузочного тестирования необходимо было провести ряд экспериментов с ЭО ПО с замером времени выполнения операций. Для определения количества экспериментов использовалась формула

(http://stratum.ac.ru/textbooks/modelir/lection21.html):

Мсрт = HQF) -р • (1 -р)/е2, где: k(OJ’) - коэффициент Лапласа;

р - предположительная вероятность наступления события;

Научный журнал КубГАУ, №89(05), 2013 года е - точность (доверительный интервал).

Нагрузочное тестирование проводилось в автоматическом режиме на базе разработанного ЭО ПО. БД содержала необходимый для проведения нагрузочного тестирования объём информации, также сгенерированной в автоматическом режиме.

3 Результаты исследования ЭО ПО сервиса передачи данных с использованием шаблонов

Эксперимент проводился при количестве записей в базе данных (БД) 3500000, количестве одновременно работающих пользователей 1000, проведении типовых операций с БД на технических средствах и установленном ПО, описанных выше. Данные нагрузочного тестирования приведены в таблицах 1-3.

Таблица 1 — Статистические характеристики нагрузочного тестирования времени создания карточки нового объекта

Количество экспериментов 1000

Средняя продолжительность, мс 1022,25

Максимальная продолжительность, мс 13377

Стандартное отклонение, мс 570,51

Доверительный интервал оценки средней продолжительности (при доверительной вероятности 0,98), мс ±41,97

Таблица 2 — Статистические характеристики нагрузочного тестирования времени регистрации профиля пользователя

Количество экспериментов 1000

Средняя продолжительность, мс 2069,19

Максимальная продолжительность, мс 45528

Стандартное отклонение, мс 3013,37

Доверительный интервал оценки

средней продолжительности (при ±221,68

доверительной вероятности 0,98), мс

Таблица 3 — Статистические характеристики нагрузочного тестирования времени предоставления хранимых бизнес-данных об одном объекте

Количество экспериментов 1000

Средняя продолжительность, мс 941,35

Максимальная продолжительность, мс 1267

Стандартное отклонение, мс 48,57

Доверительный интервал оценки средней продолжительности (при доверительной вероятности 0,98), мс ±3,57

Заключение

Проведенные исследования позволили получить временные характеристики ЭО ПО сервиса передачи данных с использованием шаблонов. На указанных выше технических средствах и ПО были обеспечены следующие временные характеристики с вероятностью 0,98:

a) Время создания карточки нового объекта — не более 1,1с.

b) Время регистрации профиля пользователя сервиса — не более 2,3 с.

c) Время предоставления хранимых бизнес-данных об одном объекте — не более 0,95 с.

Проведенные исследования подтвердили перспективность использования XML-технологий для организации хранилищ слабо структурированных данных и обмена различной информацией между пользователями без предварительных

Научный журнал КубГАУ, №89(05), 2013 года соглашений о её структуре.

Список литературы

1 Основы использования XML-схем для определения элементов [Электронный ресурс]. — Режим доступа: http://www.ibm.com/ developerworks/ru/library/xml-schema/ (дата обращения: 18.03.2013).

2 Суханов В.И. Обработка XML-документов в JAVA ЕЕ / В.И. Суханов // Политематический сетевой электронный научный журнал Кубанского государственного аграрного университета (Научный журнал КубГАУ) [Электронный ресурс]. —Краснодар: КубГАУ, 2013. -№02(86). -Режим доступа: http://ej.kubagro.ru/2013/02/pdf/44.pdf (дата обращения: 20.03.2013).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

3 OpenSTA User Home The Netty Project API Reference (3.2.6.Final) — [USA], 2012. — Mode of access: http://opensta.org/(дата обращения: 22.03.2013).

4 Apache Jmeter [Electronic resource], — [USA], 2012. —Mode of access: http://jmeter.apache.org/ (дата обращения: 25.03.2013).

References

1 Osnovy ispol'zovanija XML-shem dlja opredelenija jelementov [Jelektronnyj resurs], — Rezhim dostupa: http://www.ibm.com/ developerworks/ru/library/xml-schema/ (data obrashhenija: 18.03.2013).

2 Suhanov V.I. Obrabotka XML-dokumentov v JAVA EE / V.I. Suhanov // Politematicheskij

setevoj jelektronnyj nauchnyj zhurnal Kubanskogo gosudarstvennogo agrarnogo universiteta (Nauchnyj zhurnal KubGAU) [Jelektronnyj resurs], — Krasnodar: KubGAU, 2013. - №02(86). - Rezhim

dostupa: http://ej.kubagro.ru/2013/02/pdf/44.pdf (data obrashhenija: 20.03.2013).

3 OpenSTA User Home The Netty Project API Reference (3.2.6.Final) — [USA], 2012. — Mode of access: http://opensta.org/ (data obrashhenija: 22.03.2013).

4 Apache Jmeter [Electronic resource], — [USA], 2012. — Mode of access:

http://jmeter.apache.org/ (data obrashhenija: 25.03.2013).

Работа поддерживается Министерством образования и науки Российской Федерации, ГК№ 14.514.11.4002 (шифр 2012-1.4-07-514-0061-007).

i Надоели баннеры? Вы всегда можете отключить рекламу.