Тестирование модуля «Синхронизация» объектов одного класса, расположенного на разных серверах, с задержкой пинга между серверами от 50 до 3000 мс.
Задача:
Определить параметры работы модуля синхронизации при различном пинге между серверами, между которыми производится синхронизация.
Инфраструктура для тестирования:
- 2 сервера на площадке ЦОД (оба: Intel Xeon E 5649 (8 потоков) / RAM 4GB):
- Центральный сервер (полноценная иерархия подразделений с автоматической агрегацией данных).
- Региональный сервер.
- Утилита CLAMSY для задержки пинга.
Условия тестирования:
Синхронизация работает в 2-х режимах:
- В режиме реального времени (измененные данные на одном хосте – синхронизируются с центральным хостом).
- Каждую минуту (каждую минуту запускается модуль синхронизации и синхронизирует изменения, на случай если данные не изменились в режиме реального времени).
Схема тестирования:
1. Синхронизация данных снизу вверх (регион — центр).
Классы:
- Инвентаризация ПК.
- Коммуникационные объекты.
Действия производятся на региональном сервере, после чего (автоматически) происходит синхронизация с центральным хостом.
- Создание 10 объектов.
- Изменение 10 объектов.
- Создание/изменение 10 объектов.
Результаты тестирования:
№ | Задержка (пинг) на уровне сети, мс | Время синхронизации, с | Субъективное восприятие пользователем поведения клиента ODANT |
1 | 100 | 1–2 | без изменений |
2 | 200 | 2–4 | |
3 | 500 | 2–5 | |
4 | 1000 | 5–10 | |
5 | 2000 | 8–15 | |
6 | 3000 | 12–20 | |
7 | 4000 | утилита не позволяет установить такой пинг |
2. Синхронизация сверху вниз (центр — регион).
Класс — “Справочник услуг”.
Действия производятся на центральном хосте, после чего (автоматически) происходит синхронизация с региональным хостом:
- Создание 10 объектов.
- Изменение 10 объектов.
- Создание/изменение 10 объектов.
Результаты тестирования:
№ | Задержка (пинг) на уровне сети, мс | Время синхронизации, с | Субъективное восприятие пользователем поведения клиента ODANT |
1 | 100 | 1–2 | без изменений |
2 | 200 | 2–4 | |
3 | 500 | 2–5 | |
4 | 1000 | 5–10 | |
5 | 2000 | 8–15 | |
6 | 3000 | 12–20 | |
7 | 4000 | утилита не позволяет установить такой пинг |
3. Анализ динамики нагрузки на вычислительные мощности при задержке пинга.
При задержке пинга в 3000 мс и активном использовании функции синхронизации, нагрузка на ресурсы не возрастает. Ниже примеры динамики использования RAM и CPU.
4. Анализ стабильности работы при одновременной загрузке списка объектов.
Условия тестирования:
- Групповое создание объектов.
- Групповое удаление объектов.
Пинг / Объекты | 10 | 100 | 500 | 1000 | 2000 | 3000 |
10 | штатная работа | Создание + Удаление + Время синхр.: 1 минута | Создание + Удаление + Время синхр.: 3 минуты | Создание + Удаление + Время синхр.: 5 минут | ||
50 | штатная работа | Создание + Удаление + Время синхр.: 3 минуты | Создание + Удаление + Время синхр.: 10 минут | Создание + Удаление + Время синхр.: 30 минут | не работает | |
500 | штатная работа | Создание + Удаление + Время синхр.: 5 минут. События «съели» 100 Мб памяти | Не работает. Модуль не логирует. Удаление + События не открываются. | Не работает. Модуль не логирует. Удаление + События не открываются. | ||
3000 | Создание + Удаление + Время синхр.: 4 минуты | Создание + Удаление + Время синхр.: 30 минут | Не работает. Модуль не логирует. Удаление − События не открываются. | |||
10000 | Создание + Удаление + Время синхр.: 10 минут | Создание + Удаление − Время синхр.: 90 минут | ||||
65000 | Создание + Удаление + Время синхр.: 30 минут |
5. Анализ стабильности работы при загрузке «тяжелых» объектов.
Условия тестирования:
- Создание 1 объекта.
- Удаление созданного объекта.
- В объектах не используются файлы и фото.
- «Вес» регулируется вставкой текста.
Пинг / Объем, Мб | 10 | 100 | 500 | 1000 | 2000 | 3000 |
0,1 | штатная работа | Создание + Удаление + Время синхр.: 1 минута | Создание + Удаление + Время синхр.: 1 минута. Без задержки. | Создание + Время синхр. 2 минуты. При удалении на одном сервере объект удаляется, а на втором появляется, и так происходит с интервалом в 1 минуту. | Создание + Время синхр. 4 минуты. При удалении на одном сервере объект удаляется, а на втором появляется, и так происходит с интервалом в 1 минуту. | |
0,5 | Создание + Удаление + Время синхр.: 7 минут | Создание + Удаление + Время синхр.: 12 минут | Создание + Удаление + Время синхр.: 25 минут | |||
1 | Создание + Удаление + Время синхр.: 30 минут | |||||
5 | не работает |
Выводы:
Модуль синхронизации способен обеспечить стабильную синхронизацию между серверами при выполнении следующих требований к параметрам:
- Пинг.
- Количество одновременно загружаемых/изменяемых объектов.
- Размер одного объекта.
Пинг | Объекты (до) | Задержка(мин) |
10 | 65000 | 30 |
100 | 3000 | 30 |
500 | 50 | 3 |
1000 | 50 | 10 |
2000 | 50 | 30 |
3000 | 10 | 5 |
Пинг | Размер объекта, до (Мб) | Задержка(мин) |
10 | 1 | 30 |
100 | 0,5 | 12 |
500 | 0,5 | 25 |
1000 | 0,1 | 1 |
В случае необходимости реализации проекта, в котором показатели выходят за границы, необходима доработка модуля.