Uploaded by amaterasu

статья 1.2

advertisement
1
Аннотация
Ведение бухгалтерского учета – это организация сбора информации о
состоянии имущества и обязательствах компании, а также непрерывное
отражение этой информации в специальных бухгалтерских документах. На
данный момент существует программное обеспечение, удовлетворяющее всем
требованиям законодательства РФ к ведению бухгалтерского и налогового
учёта – это решения российской компании «1С», что наиболее актуально в
рамках проводимого импортозамещения.. Его внедрение для автоматизации
процесса учета бухгалтерской и финансовой деятельности позволяет сдавать
своевременно отчетность в электронном виде, снижая налоговые и
финансовые риски. Для корректной работы информационной системы на базе
платформы «1С:Предпритие 8» необходима СУБД. Существует много
различных
СУБД,
способных
обеспечить
необходимый
уровень
производительности и стабильности, часть из них распространяется
бесплатно, например, Postgress SQL, однако останется проблема возможной
потери производительности или нестабильной работе прикладного решения
при переходе на новую СУБД.
Цель проведения нагрузочного тестирования
Основная цель нагрузочного тестирования заключается в том, чтобы,
создав определённую ожидаемую в системе нагрузку (например, посредством
виртуальных пользователей) и, обычно, использовав идентичное программное
и аппаратное обеспечение, наблюдать за показателями производительности
системы. Данная статья описывает общий подход к проведению нагрузочного
тестирования и положения по организации тестовой инфраструктуры, исходя
из предположения, что в дальнейшем она может быть использована для целей
обеспечения технологического качества, например, при переходе на новые
версии информационной системы. Основные положения:

Доступность

Стабильность
2
Под

Устойчивость

Работоспособность

Производительность

Масштабируемость
проблемами
подразумеваются
задачи
качества
работы
доступности,
информационной
стабильности,
системы
устойчивости,
работоспособности и ее производительности. В процессе эксплуатации
информационной системы возможно изменение требований к ней в связи с
переработкой требований бизнеса, например, увеличение числа пользователей
или изменение спектра решаемых задач.
Расчет требований к оборудованию
Если
информационной
системы
ещё
нет
(или новые профили значительно отличаются от существующей нагрузки),
требуется выполнить ряд шагов.

Смоделировать
выполнение сценариев в однопользовательском режиме

Оценить характера нагрузки

Рассчитать требования к оборудованию
В результате этого шага получаются формализованные требования к
серверному оборудованию, которое будет использоваться в нагрузочном
тестировании.
Анализ технологий и средств разработки программного продукта
Технологии и инструменты разработки
Для
расчётов
требований
пользовательских систем компанией
к
оборудованию
и
тестирования
«1С:Предприятие» был разработан
специальный программный модуль, который позволяет выполнить нагрузку
основных узлов.
3
Тест-центр —
нагрузочных
инструмент
испытаний
автоматизации
информационных
многопользовательских
систем
на
платформе
1С:Предприятие 8. С его помощью можно моделировать работу предприятия
без участия реальных пользователей, что позволяет оценивать применимость,
производительность и масштабируемость информационной системы в
реальных условиях.
Основные возможности Тест-центра: описание многопользовательских
сценариев тестирования; автоматический запуск сценариев и контроль хода их
выполнения; сбор, хранение и анализ результатов тестирования.
Архитектура
Тест-центр,
представляет
собой
конфигурацию,
механизм управления процессом тестирования.
реализующую
4
Рис.1 Архитектура Тест-центра
В тестировании принимает участие Эксперт — человек, который
программирует тестовые обработки, запускает тест, контролирует выполнение
теста, просматривает и анализирует результаты тестирования. Управляющее
клиентское рабочее место, которое использует эксперт, называется Тестцентром. Тест-центр управляет работой виртуальных пользователей, которые
выполняют действия при помощи управляемых клиентских рабочих мест,
называемых виртуальными рабочими местами. Связь между Тест-центром и
виртуальными пользователями осуществляется через информационную базу с
внедренным в нее Тест-центром. Виртуальные пользователи работают на
основании сценария тестирования.
Сценарий — это описание структуры тестовой деятельности. Сценарий
содержит список ролей, каждая из которых содержит свой список тестовых
действий.
При
запуске
сценария
Тест-центр
будет
автоматически
5
воспроизводить
многопользовательскую
деятельность,
описанную
в
сценарии.
Рис.2 Последовательность действий тестировщика
Методика Apdex.
Apdex является числовой мерой удовлетворенности пользователей
производительностью приложений. Для расчета Apdex собирается множество
статистических данных о времени исполнения операций приложением. Далее
производится
компоновка
данных,
с
учетом
факторов
влияния,
и
6
математическое преобразование, которое приводит все эти данные к значению
в интервале от «0» до «1» .
Преимущества методики
Методика Apdex предоставляет готовый алгоритм, приводящий к
простому значению разнородные факторы и множество статистических
данных о производительности. Главное преимущество методики состоят в
простом результате для быстрой оценки состояния производительности ИС.
Интервалы значений Apdex имеют логическое соответствие простым
критериям оценки «хорошо», «плохо», «неприемлемо», которые понятны
простым пользователям.
Индекс строится на основании фактических данных, полученных при
работе
всех
пользователей
приложения.
Результирующая
оценка
производительности по методике Apdex является общей, фактической и
объективной.
𝐴𝑝𝑑𝑒𝑥
=
Кол − во операций в зоне Довольны" +
кол − во операций в зоне "Удовлет
2
Общее кол − во операций
Индекс
производительности
рассчитывается
как
соотношение
количества операций, которые выполнены с высокой скоростью, к общему
количеству операций. При этом, под операциями с «приемлемой» скоростью
принимается сумма: количество операций, которые выполнены с целевой
скоростью Т и быстрее, и половина количества операций, которые выполнены
со скоростью до четырех раз медленнее целевой скорости исполнения (время
исполнения которых от T до F=4T).
Из формулы видно, что Apdex всегда будет принимать значения в
интервале от 0 до 1. При ранжировании и в формуле, явным образом не
учитывается
количество
операций,
выполненных
со
скоростью
больше F — при желании, эту цифру всегда можно оценить путём вычитания
7
количества операций выполненных с «приемлемой скоростью» из общего
количества операций.
У формулы есть объективное условие, влияющее на достоверность
результата Apdex – количество одноименных операций за период (по которым
производится расчет Apdex) должно быть более 10, иначе значение Apdex
будет занижено.
Сравнение Архитектуры
Базы данных созданы для структурированного хранения и быстрого
доступа к различным данным. Каждая база данных, кроме самих данных,
должна иметь определенную модель работы, с помощью которой выполняться
обработка данных. Для управления базами данных разработаны СУБД:
MySQL и Postgresql.
Какие особенности реляционных системы управления базами данных: с
помощью них можно размещать данные в таблицах, связывая строки из
разных таблиц. Для начала работы перед сохранением данных, необходимо
создать таблицы определенного размера и указать тип данных для каждого
столбца. Столбы - это поля данных, а сами данные хранятся в строках. MySQL
vs Postgresql относятся к реляционным.Управление в этих двух моделях баз
данных является одним из наиболее существенных различий. MySQL
8
управляется Oracle, тогда как Postgres доступен по лицензии с открытым
исходным кодом от Global Group. Таким образом, наблюдается повышение
интереса к PostgreSQL в последние несколько лет.
Обе СУБД могут работать на Linux, OS X, Solaris и Windows. Linux
имеет открытый исходный код, OS X разработан Apple, Solaris разработан
Oracle
и
Windows
создана
коропорацией
Microsoft.
MySQL
также
поддерживает ОС FreeBSD. PostgreSQL поддерживает операционную систему
HP-UX, которая создана компанией Hewlett Packard.
MySQL и PostgreSQL значительно различаются по своим методам выделения
разделов, которые определяют, как данные хранятся на различных узлах базы
данных. MySQL использует собственную технологию под названием MySQL
Cluster для выполнения горизонтальной кластеризации, которая состоит из
создания нескольких кластеров с одним экземпляром кластера в каждом узле.
PostgreSQL не реализует истинное разделение, хотя он может обеспечить
аналогичные возможности наследования таблицы. Эта задача включает в себя
использование отдельной под таблицы для управления каждым разделом.
Разработка прототипа программного продукта
Необходимо было интегрировать тест центр как внешнюю компоненту
в рабочую базу, обеспечить его работу, запрограммировать сценарий и
провести нагрузочное тестирование одной и той же конфигурации на
PostgreSQL 10 и MySQL 8, и на серверах с различными комплектующими
различной мощности. Результаты выполнения всей работы представлены на
скриншотах ниже
Рис.3 результаты тестирования
Исходя из вычислений, которые были произведены на базах
развёрнутых на PGSQL и обычном SQL можно сделать вывод о том, что SQL
превосходит по скорости PGSQL.
9
Рис.3 результаты тестирования
На данном рисунке можно увидеть, что при увеличении количества
оперативной памяти и увеличении рабочих ядер процессора увеличивает
производительность. Это видно по колонке «врм» (виртуальные машины) и
колонке со значением apdex. Таким образом видно, что при увеличении
мощности сервера apdex либо не уменьшается, либо уменьшается
незначительно.
Выводы
10
СПИСОК ЛИТЕРАТУРЫ
1. Бейзер, Б. Тестирование черного ящика. Технологии функционального
тестирования программного обеспечения и систем / Б.Бейзер. – СПб.:
Питер, 2004. – 318с.
2. Фаулер, М. Архитектура корпоративных программных приложений /
Д.Райс – Вильямс, 2016. – 544с
3. Эспозито, Д. Программирование с использованием Microsoft ASP. NET 4 /
Д. Эспозито. – СПб.: Питер, 2019. – 235 c.
4. Вирт, Н. Алгоритмы и структуры данных. Новая версия для Оберона / Н.
Вирт – М.: ДМК Пресс, 2017. – c. 360.
5. Фицджеральд, М. Основы. Регулярные выражения / М. Фицджеральд. - М.:
Диалектика / Вильямс, 2015. – 692 c.
6. Рачинский Е.С. Программная среда для оценки производительности
клиент-серверных систем при нагрузочном окружении [Текст] / Е.С.
Рачинский. – 2015 №5 – С. 105-111.
7. Солнушкин
К.С.
Моделирование
совокупной
стоимости
владения
вычислительной системой [Текст] / К.С.Солнушкин. – 2008 №56– С. 130135.
Download