Скорость работы
Грамотность проектирования, профессионализм и эффективные средства разработки обеспечивают очень высокую скорость расчётов.
Результаты тестирования системы «Мегабиллинг» на базе «IBM-UKRAINE» в объёме 1 500 000 лицевых счетов
Тестирование проводилось специалистами компаний IBM и «Мегасофт» 30 марта 2013 года в городе Киеве, Украина.
Цели тестирования
- Проверка методики тестирования производительности системы;
- Определение причин, влияющих на производительность системы и оптимизация настроек;
- Оценка быстродействия работы биллинговой системы «Мегабиллинг» на базе программно-аппаратного комплекса IBM.
1. Описание архитектурного стенда
- 1.1 Сервер баз данных
- Спецификация аппаратной части сервера:
- Power Server-8204-E8A
- 64 GB ОЗУ
- 8 POWER 6 core
- 2 Double 4Gbps FC adapter
- 4 Gigabit PCI Express Dual Port Fibre Channel Adapter
- Dual 1 Gigabit Ethernet-TX PCI-X Adapter
- Операционная система сервера AIX OS
- Система управления базой данных IBM-Informix 11.7 Ulimate Edition
- Спецификация аппаратной части сервера:
- 1.2 Сервер приложений
- Спецификация аппаратной части сервера
- IBM System x3850
- 64 GB ОЗУ
- E7330 @ 2.40GHz 16 core
- Операционная система сервера Red Hat Enterprise Linux Server release 5.2 (Tikanga) x86_64
- Спецификация аппаратной части сервера
- 1.3 Хранилище данных
- Storage System: DS4700 has 2 RAID0 arrays, each of 8 HDD. There are 2 x 1TB LUNs
2. Данные для тестирования
- Использованы реальные обезличенные данные в количестве 1 500 000 лицевых счетов с активной историей более 10 лет взаиморасчётов.
- Общий объем данных составляет 200 Гб.
3. Описание тестов.
Для оценки производительности работы системы выбрано два теста, которые наиболее полно характеризуют скорость работы любой биллинговой системы в реальных условиях и зависят от скорости работы прикладного программного обеспечения, операционной системы и СУБД сервера, вычислительной мощности аппаратного обеспечения.
Первый тест – это эмуляция реальной работы сотрудников поставщика коммунальных ресурсов, обслуживающих абонентов на окнах справок.
Второй тест – это задача расчёта сальдо одновременно по всем лицевым счетам базы данных, которая на практике производится раз в месяц как процедура закрытия месяца.
3.1 Описание первого теста (задача класса OLTP)
Для эмуляции оперативной работы сотрудников поставщика коммунальных ресурсов с целью создания нагрузки на систему на сервере генерируется процесс, который выполняет перечень операций, аналогичный реальным операциям, выполняемым сотрудниками при обслуживании абонентов на окнах справок. Каждый такой процесс моделирует работу одного сотрудника при проведении сверки одного абонента. Для построения более достоверной модели с каждым процессом связали свой процесс случайного выбора лицевых счетов, причём время ожидания между обслуживанием абонентов так же варьируется случайным образом и составляет от 10 до 35 секунд, а время ожидания между каждой из выполняемых функций случайным образом варьируется от 6 до 16 секунд.
В данной модели гипотетически предполагается, что время ожидания используется оператором для осознания состояния взаиморасчётов по данному лицевому счёту и пояснения их абоненту.
Перечень типов операций, моделирующих работу оператора с лицевым счётом абонента:
- Вызов закладки «общая карточка»
- Вызов закладки «тарифы»
- Вызов закладки «начисления»
- Вызов закладки «счетчики»
- Вызов закладки «оплаты»
- Вызов закладки «льготы»
- Вызов закладки «объекты учета»
- Вызов закладки «оборотная ведомость»
- Вызов закладки «счета»
- Вызов функции полного перерасчета лицевого счёта
3.2 Описание второго теста (задача класса DSS)
Для оценки производительности процедуры закрытия месяца была взята программа, которая ежемесячно запускается на рабочих серверах. Данная программа в монопольном режиме рассчитывает всех абонентов за всю историю взаиморасчётов поставщика и потребителя коммунального ресурса, выполняет начисление и погашение стоимости потреблённого коммунального ресурса, рассчитывает сальдо по каждому лицевому счёту и производит еще ряд начислений необходимых для функционирования комплекса.
4. Критерии оценки результатов тестирования
- Тест по обслуживанию абонентов считается удовлетворительным, если время выполнения каждой из тестируемых функций системы не превышает 2-5 секунд
- Тест на проведения процедуры закрытия месяца считается удовлетворительным, когда время его выполнения составляет не более 8-ми часов, так как в реальности процедура закрытия месяца должна быть выполнена в ночное время максимум за одну ночь.
5. Результаты тестирования
- Первый тест – эмуляция реальной работы сотрудников. Результаты измерений скорости работы теста - продолжительность выполнения любой из операций перечня составило менее 1 секунды при эмуляции одновременной работы 1500 сотрудников.
- Второй тест – процедура закрытия месяца. Результаты измерений скорости работы теста — продолжительность выполнения составила 3 часа 30 минут на базе данных 1 500 000 лицевых счетов при активной истории взаиморасчётов по каждому лицевому счёту 10 лет.
6. Примечания
- Процесс развертывания баз данных и установки предварительных настроек составил 5 дней.
- Общее затраты времени на предварительное тестирование составили 30 дней.
- Сотрудники IBM оказали существенную помощь в определении возможных причин снижения производительности системы и их устранении путём оптимизации настроек, а так же в построении общей стратегии оптимизации работы системы.