Тесты производительности
Последнее обновление: 14.10.2026Пакетная конвертация QV2QS масштабируется на несколько процессорных ядер. Приведенные ниже тесты производительности измеряют сквозную производительность при различном количестве воркеров на фиксированном наборе данных.
Тестовая среда
Эталонный набор данных содержит 28 приложений QlikView с 234 листами и 5 377 объектами. Все папки PRJ были предварительно сгенерированы перед запусками бенчмарка. При каждом запуске все 28 приложений развертывались в Qlik Cloud, при этом были включены перезагрузка и автоматическая Загрузка двоичного файла.
Тестовая машина имеет 12 логических ядер процессора. QV2QS использует пул процессов для локальной конвертации (истинный параллелизм процессора) и пул потоков для развертывания в облаке (с ограничением по вводу-выводу).
Сквозные результаты
Каждый столбец представляет собой количество рабочих процессов. В строках детализируются два последовательных этапа — локальное преобразование и развертывание в облаке, — составляющие сквозной итог.
1w 5w 10w ▸ 11w ▸ 15w 20w 25w 30w
────────────────────────────────────────────────────────────────────────
Conversion
Elapsed 4m 28s 1m 30s 1m 22s 1m 15s 1m 06s 1m 11s 1m 11s 1m 13s
CPU time 3m 25s 5m 12s 8m 01s 7m 13s 7m 41s 8m 58s 10m 09s 10m 18s
Cloud 19m 12s 4m 32s 3m 26s 3m 23s 3m 00s 3m 00s 3m 09s 3m 13s
────────────────────────────────────────────────────────────────────────
Total 23m 40s 6m 02s 4m 48s 4m 38s 4m 06s 4m 11s 4m 20s 4m 26s
Speedup 1.0x 3.9x 4.9x 5.1x 5.8x 5.7x 5.5x 5.3x
▸ 11w = Auto-detect default (cores − 1)
▸ 15w = Observed peak
- Затраченное время — астрономическое время локальной конвертации: парсинг PRJ XML, обход графа объектов и генерация QS JSON.
- Процессорное время — суммарное процессорное время, затраченное всеми рабочими процессами во время конвертации. Процессорное время увеличивается с ростом числа рабочих процессов, поскольку каждый дополнительный процесс создает накладные расходы на планирование и память.
- Облако — астрономическое время на развертывание в облаке: создание приложения, загрузка медиафайлов, сборка, перезагрузка и Загрузка двоичного файла.
- Всего — сквозное астрономическое время (время конвертации + облако).
Поведение масштабирования
- Локальная конвертация масштабируется линейно вплоть до количества ядер процессора. Увеличение количества воркеров с 1 до 10 на 12-ядерной машине сокращает время конвертации на 70%.
- Облачное развертывание масштабируется с увеличением числа потоков, так как работа ограничена операциями ввода-вывода (сетевые запросы к API Qlik Cloud). Фаза в облаке сокращается с 19 минут при 1 воркере до 3 минут при 10 воркерах.
- Сверх количества ядер ЦП дополнительные рабочие процессы создают накладные расходы на планирование процессов без ощутимого улучшения. Запуски с 20 и 30 воркерами выполняются медленнее, чем запуск с 15 воркерами.
- Пиковая пропускная способность достигается примерно при 15 воркерах на этой 12-ядерной машине (ускорение в 5,8 раза). Автоматически определяемое значение по умолчанию «число ядер минус один» (11 рабочих процессов, ускорение в 5,1 раза) находится в пределах 12% от пикового значения без штрафа за избыточное выделение ресурсов.
- Процессорное время стабильно растет с увеличением числа воркеров. При 11 рабочих процессах конвертация потребляет 7 мин 13 с суммарного процессорного времени. При 30 воркерах та же работа занимает 10 мин 18 с — увеличение затрат процессорного времени на 43% без какого-либо сокращения реального времени выполнения.
Этап «облако» включает перезагрузку с использованием функции «Загрузка двоичного файла» для каждого приложения. Время в облаке зависит от объема данных приложения, сложности перезагрузки, нагрузки на клиента и выделения ресурсов движка Qlik Cloud. Для более крупных приложений или более загруженных арендаторов время в облаке будет больше, чем показано здесь.
Параллелизм облачного развертывания
Qlik Cloud применяет ограничение на количество одновременных перезагрузок для каждого клиента. Когда пакетное развертывание выполняется с большим количеством рабочих процессов, запросы на перезагрузку, превышающие лимит клиента, помещаются в очередь на стороне сервера. Ускорение фазы в облаке выходит на плато, как только достигается лимит одновременных перезагрузок, независимо от локальных ресурсов процессора и потоков.
Подробные сведения о лимитах на уровне клиента см. в разделе Лимиты ресурсов Qlik Cloud. Для получения полной спецификации защитных ограничений емкости Qlik Cloud см. Спецификации и защитные ограничения емкости Qlik Cloud.