В этой статье:
Настройка продукта «Форсайт. Аналитическая платформа»
Работа с объектами репозитория
Время ожидания до прерывания сессии
Для повышения производительности продукта «Форсайт. Аналитическая платформа» используйте настройки аппаратного и программного обеспечения.
На базе нескольких BI-серверов продукта «Форсайт. Аналитическая платформа» можно развернуть отказоустойчивый кластер. Для этого понадобится балансировщик, сервер состояний и несколько BI-серверов, настроенных на работу с одним сервером состояний.
Для повышения производительности BI-сервера на Apache2 настройте:
переменные окружения. Для снижения пикового потребления памяти «Форсайт. Аналитическая платформа» на ОС Linux добавьте дополнительные переменные окружения:
PP_RETMEM=1
MALLOC_MMAP_THRESHOLD_=8192
PP_RETMEM_CO=1
MALLOC_ARENA_MAX=1
Примечание. Использование переменной MALLOC_ARENA_MAX=1 может сократить потребление памяти BI-сервером, но при этом возможно снижение производительности. Проведите тестирование производительности прикладной системы при использовании переменной.
количество рабочих потоков в каждом процессе. Установите число рабочих потоков в рамках одного экземпляра Apache2 не больше, чем удвоенное количество пользователей, которые должны работать на данном экземпляре. Превышение рекомендованного значения может привести к повышенному расходу памяти, однако, слишком малое количество потоков может привести к снижению производительности. Количество рабочих потоков в каждом процессе рассчитывается индивидуально для каждой прикладной системы на основании результатов нагрузочного тестирования.
База данных и BI-сервер должны располагаться в одной локальной сети. Иначе возможно сильное падение производительности из-за больших накладных расходов на SQL-запросы.
По умолчанию конфигурационный файл PostgreSQL/Postgres Pro идёт с минимальными настройками. Увеличьте значения параметров max_connections, work_mem и shared_buffers в соответствии с аппаратными характеристиками сервера, на котором установлена СУБД. Установите значение параметра max_connections в размере суммы максимального количества в пулах соединений на каждом из узлов кластера с запасом 25%.
При работе с СУБД ClickHouse в строке подключения рекомендуется указывать параметр STRINGMAXLENGTH, ограничивающий максимальный размер строковых значений. Это позволяет уменьшить в оперативной памяти объем буфера, который выделяется под получаемые данные, что в свою очередь увеличит скорость выполнения запросов и благоприятно скажется на общей производительности. Пример: Driver={ClickHouse ODBC Driver (Unicode)};Server=localhost;Database=default;UID=default;PWD=default;STRINGMAXLENGTH=8000.
Продукт «Форсайт. Аналитическая платформа» позволяет использовать преимущества SMP-систем и может использовать все доступные ядра процессора. Запросы от пользователей выполняются множеством потоков в рамках сервера приложений. Потоки автоматически распределяются операционной системой на доступные ядра процессора. Таким образом, выполняется распределение вычислительной нагрузки.
При входе в систему и работе с продуктом «Форсайт. Аналитическая платформа» последовательно запрашиваются единицы лицензирования. Для ускорения обращений к серверу лицензий на базе RMS:
укажите конкретный адрес сервера лицензий для поиска сетевой лицензии в ОС Windows:
создайте системную переменную LSFORCEHOST и задайте адрес сервера лицензий в качестве значения переменной;
установите переключатель «Поиск лицензий на сервере» в окне «Настройки поиска лицензии» и задайте адрес сервера лицензий в соответствующем поле;
Примечание. Системная переменная LSFORCEHOST приоритетнее окна «Настройки поиска лицензий».
используйте сервис лицензирования для распараллеливания запросов сетевых лицензий от BI-сервера к серверу лицензий;
минимизируйте количество подключаемых внешних накопителей на компьютере с BI-сервером, таких как USB-флеш, USB-HDD, CD-ROM и других. При работе с лицензиями осуществляется получение списка всех подключенных устройств и обращение к ним.
При администрировании продукта «Форсайт. Аналитическая платформа» в менеджере безопасности:
установите флажок «Создавать субъекты с отложенной загрузкой» для ускорения загрузки данных субъектов безопасности, если в системе содержится более двухсот субъектов;
разграничивайте права доступа к объектам через группы пользователей. Если предполагается настраивать права доступа для более двухсот групп, то используйте дискреционный метод разграничения доступа совместно с атрибутным.
Если используется доменная или интегрированная доменная аутентификация, то создавайте доменные группы без явного добавления каждой учётной записи пользователей.
Примечание. Поддержка доменных групп доступна, если на уровне СУБД содержатся группы в виде ролей и пользователи, входящие в эти роли.
Для работы с объектами репозитория:
установите флажок «Автоматическое подключение» в свойствах базы данных и задайте имя пользователя и пароль в соответствующих полях, если для подключения к репозиторию используется доменная или интегрированная доменная аутентификация, и снят флажок «Переопределить настройки подключения к БД» в свойствах базы данных. Таким образом, при открытии реляционных объектов будет сокращено время подключения к базе данных, из которой загружаются данные;
установите флажок «Отложенная загрузка дескрипторов объектов» в настройках подключения к репозиторию, если репозиторий содержит большое количество объектов. Таким образом, при подключении будут загружаться дескрипторы только тех объектов, которые необходимы для работы в репозитории;
Примечание. Отложенная загрузка дескрипторов ускоряет вход в систему только в настольном приложении. При работе с веб-приложением не рекомендуется использовать отложенную загрузку.
установите флажок «Кеширование системных таблиц при старте сервера» в настройках подключения к репозиторию. Кеширование позволяет увеличить производительность системы и скорость открытия сложносоставных отчётов, использующих множество источников данных, в веб-приложении за счёт сокращения времени чтения системных таблиц из базы данных;
Важно. Кеширование системных таблиц метаданных допустимо только в промышленной эксплуатации. При использовании кеширования не должны изменяться данные в системных таблицах метаданных.
убедитесь, что при настройке размещения элементов в таблице не используется автоподгонка ячеек. Задайте высоту ячейки вручную с помощью свойства ITabSheet.DefaultHeight, ширину ячейки - ITabSheet.DefaultWidth. Размер ячеек будет использоваться по умолчанию при создании новых строк и столбцов;
учитывайте особенности работы с таблицей в среде разработки «Форсайт. Аналитическая платформа».
Если установлены расширения продукта, то для повышения производительности:
убедитесь, что при работе с реестровой формой в расширении «Интерактивные формы ввода данных» все измерения кубов, созданных автоматически, привязаны к полям источников данных;
используйте виртуальные ячейки и настраивайте размер ячеек вручную в расширении «Интерактивные формы ввода данных»:
установите флажок «Использовать виртуальные ячейки» в мастере табличной области;
убедитесь, что в мастере табличной области не задана автоподгонка ячеек. Задайте высоту ячейки вручную с помощью свойства ITabSheet.DefaultHeight, ширину ячейки - ITabSheet.DefaultWidth. Размер ячеек будет использоваться по умолчанию при создании новых строк и столбцов;
используйте условный оператор ?: вместо функции Iif при настройке формул расчёта в расширении «Алгоритмы расчёта»;
запускайте выполнение бизнес-процессов, построенных в расширении «Управление бизнес-процессами», в отдельном потоке с помощью метода IForeThread.Start при разработке приложений.
Отключите логирование «Форсайт. Аналитическая платформа» или скройте вывод отладочной информации:
Создайте раздел «Log» в ветке реестра [HKEY_LOCAL_MACHINE\Software\Foresight\Foresight Analytics Platform\10.0].
В разделе создайте параметр WriteToDebugOutput типа REG_DWORD со значением «0».
Пул соединений ограничивает количество соединений между экземпляром BI-сервера и СУБД. По умолчанию лимит пула соединений установлен 50. Установите лимит пула вручную в нужное значение в зависимости от потребностей прикладной системы. Настройка пула читается каждым процессом BI-сервера отдельно.
Задайте время ожидания при отсутствии запросов, по истечении которого сессия с репозиторием будет разорвана, с помощью параметра TimeoutSec в подразделе реестра [HKLM\SOFTWARE\Foresight\Foresight Analytics Platform\10.0\PP\BIS\System\Session]. Использование больших значений времени может привести к повышенному потреблению памяти, использование бесконечного значения «-1», может привести к утечкам памяти.
Если антивирусная программа устанавливается на сервера, которые обеспечивают поддержку контура промышленной эксплуатации (кластер веб-серверов, балансировщики нагрузки, кластер BI-серверов, сервер состояний, сервер приложений, сервер лицензий, кластер сервисов лицензирования, сервер СУБД), то производительность системы может снизиться из-за особенностей работы антивирусной программы. Вследствие чего наблюдаются задержки при выполнении операций, связанных с файловым и сетевым вводом-выводом. Для повышения производительности системы обратитесь к рекомендациям производителя средств антивирусной защиты. Например, рекомендации для Kaspersky Endpoint Security версии 12 указаны в документации Kaspersky.
При настройке антивирусной программы исключите из проверок компоненты «Форсайт. Аналитическая платформа»:
в ОС Linux:
папка установки BI-сервера /opt/foresight/fp10.x-biserver;
папка установки серверной части веб-приложения /opt/foresight/fp10.x-webserver;
папка, содержащая конфигурационный файл экземпляра веб-сервера envvars, /etc/opt/foresight/fp10.x-webserver;
папка, содержащая конфигурационные файлы экземпляра Apache2 с BI-сервером: /etc/apache2-fp10.x в Debian-подобных дистрибутивах, /etc/httpd-fp10.x в RedHat-подобных дистрибутивах, /etc/httpd2-fp10.x в ALT Linux;
папка, содержащая конфигурационные файлы экземпляра Apache2 с серверной частью веб-приложения: /etc/apache2-fp10.x-web в Debian-подобных дистрибутивах, /etc/httpd-fp10.x-web в RedHat-подобных дистрибутивах, /etc/httpd2-fp10.x-web в ALT Linux;
в ОС Windows:
папка установки BI-сервера C:\Program Files\Foresight\Analytics Platform 10.x;
папка установки веб-приложения C:\Program Files (x86)\Foresight\Analytics Platform 10.x Web Application;
папка, содержащая файл settings.xml, C:\ProgramData\Foresight\Foresight Analytics Platform;
папка хранения кеша C:\Users\<имя пользователя>\AppData\Local\Foresight\Foresight Analytics Platform.
Убедитесь, что процессы, которые использует «Форсайт. Аналитическая платформа», не сканируются в постоянном режиме. К процессам относятся: BI-сервер, веб-сервер, сервер лицензий, планировщик задач. Также учитывайте, что «Форсайт. Аналитическая платформа» может использовать другие процессы, запускаемые пользователем, например, при выполнении прикладного кода на Fore или при подключении дополнительных модулей: Python, Java, R и других.
Для увеличения скорости работы продукта «Форсайт. Аналитическая платформа» в ОС Windows:
Отройте панель управления Windows.
Перейдите в раздел «Электропитание» в категории «Система и безопасность».
Установите переключатель «Высокая производительность»:

После выполнения действий будет увеличена скорость работы продукта «Форсайт. Аналитическая платформа».
Убедитесь, что средства отладки и профайлинга: Intel Vtune, DebugDiag, AppVerifier, Valgrind, а также антивирусные программы, не используются на серверах в контуре промышленной эксплуатации.
См. также:
Установка и настройка продукта «Форсайт. Аналитическая платформа»