Ещё видео и статьи
 

Что такое быстродействие?

Быстродействие информационной системы — это показатель, который характеризует скорость выполнения системой операций и задач.

Быстродействие информационной системы может быть улучшено за счет оптимизации алгоритмов, использования более производительного оборудования, а также применения различных технологий и методов оптимизации. В общем случае, целью является достижение максимально возможного быстродействия системы при сохранении ее надежности, безопасности и соответствия требованиям пользователей и приложений.

В данной статье рассмотрим общие положения, которые помогут при анализе и оптимизации производительности кейсов на платформе Optimacros.

Структура приложения

Рассмотрим структуру приложения Optimacros и компонентов, которые оно использует, с точки зрения поиска и понимания возможных проблем с быстродействием.

  • Железо
  • Optimacros может быть развернут как в облаке, так и on-premise. Существуют требования к серверу (прикрепить ссылку на документ), которые необходимо соблюдать для минимизации проблем с производительностью, вызванных избыточной нагрузкой на hardware составляющую системы.

  • Web-клиент
  • Работа пользователей с системой осуществляется через веб-браузер. В контексте оптимизации быстродействия стоит обращать внимание на требования к возможным поставщикам и версиям браузеров со стороны Optimacros, а также на наличие сетевых проблем на стороне пользователя.

  • WS и ЛЦ
  • Два основных компонента приложения ОМ, с которыми сталкиваются пользователи в работе: Workspace (WS)– рабочая область, в которой происходит непосредственное взаимодействие с моделями и данными Optimacros.

    Логин центр (ЛЦ) – приложение, которое отвечает за управление учетными записями пользователей и за доступ в Optimacros.

    Возможные вопросы быстродействия на уровне этих компонентов рассмотрим ниже.

  • Модель
  • Наиболее интересным блоком внутри темы быстродействия является оптимизация производительности моделей Optimacros. Влияние могут оказывать объем модели и ее конкретных объектов, формат и формулы связей между ними, структура скриптов и др. Для того, чтобы лучше ориентироваться в вопросах быстродействия моделей, необходимо понимать, в каком разделе приложения выполняются те или иные операции.

    BackEnd (BE) – часть приложения и программные компоненты, которые обрабатывают данные, выполняют логику приложения и взаимодействуют с базой данных. В Optimacros сюда входит хранение данных, расчеты (формулы).

    FrontEnd (FE) – часть приложения, которая отвечает за пользовательский интерфейс. В Optimacros сюда входят фильтры, кнопки, графики, дэшборды, контекстные таблицы и др. внешние элементы.

    MiddleWork (MW) – часть приложения, которая обеспечивает взаимодействие между различными компонентами приложения или системы (в частности BE и FE). В Optimacros сюда входит исполнение скриптов, подготовка (построение) гридов для визуализации на FE и др.

Наиболее частые вопросы производительности в каждом из компонентов

Железо
  • Переполнение жесткого диска
  • Переполнение оперативной памяти
  • Экстремальная загрузка процессора
  • Проблема с железом (используется HDD вместо SSD)
  • SWAP ОЗУ на жесткий диск. Наиболее часто встречается в коммерческих облачных сервисах, когда происходит выгрузка модели из ОЗУ в SSD и обратно.

 

Web-клиент/ЛЦ
  • Долго открывается/не открывается страница по ссылке
  • Долго осуществляется переход на WS после заполнения учетных данных

 

WS
  • Долго открывается/не открывается модель

 

Модель
  • Проблемы с производительностью интерфейсов управления мастер-данными (справочники, атрибуты, подмножества и др.).
    Место в приложении: FE/BE/MW.
    Основные бенчмарки: добавление новых элементов/атрибутов в справочники, изменение атрибутов и иерархий, заполнение подмножеств.
  • Проблемы с производительностью скриптов (долгое выполнение скриптов интеграции и др.).
    Место в приложении: MW.
    Основные бенчмарки: скорость выполнения скриптов и цепочек скриптов. При этом стоит учитывать, что в зависимости от объема данных и специфики скрипта бенчмарки «хорошей» производительности могут варьироваться.
  • Проблемы с производительностью форм ввода (скорость ручного заполнения ячейки). Место в приложении: BE (редко FE).
    Основные бенчмарки: скорость ввода данных на формах ввода. Этот показатель чаще всего зависит от количества ячеек в модели, пересчет которых вызывает введенное значение. В следующих статьях будут более детально описаны варианты оптимизации в этой области, в частности, сокращения объема пересчетов in-memory.
  • Проблемы с производительностью дэшбордов (долгое открытие дэшбордов, долгое переключение фильтров).
    Место в приложении: FE/MW.
    Основные бенчмарки: первичная загрузка карточек дэшборда, скорость обновления карточек при изменении контекста.
  • Общие проблемы с производительностью модели (долгое сохранение формул, долгое открытие мультикубов). BE.
    Место в приложении: BE/Hardaware/Сеть.
    Основные бенчмарки: скорость сохранения формул, скорость открытия мультикубов, скорость создания новых кубов/мультикубов, скорость изменения форматов кубов и тд. При возникновении подобных кейсов стоит обращать повышенное внимание на возможные проблемы на уровне железа или сети.
  • Блокировка работы пользователей длительными операциями внутри модели.
    Место в приложении: BE/MW
    Основные бенчмарки: зависание простых операций, которые обычно не вызывали вопросов, и появление плашки с очередью процессов в правом нижнем углу экрана. К подобным операциям относятся, например, пересчет модели, перезапуск модели, бэкапироваие (в некоторых случаях для моделей большого объема) и еще ряд операций, который будет описан в других статьях.

Типовые решения

Железо

Соблюдение требований вендора к Hardware и правильный сайзинг решают большую часть проблем с быстродействием на данном уровне. Отдельные кейсы, которые не решаются данными способами, будут описаны в следующих статьях.

Web-клиент/ЛЦ

Большая часть проблем с быстродействием на уровне Web-клиента может быть решена за счет устранения сетевых неполадок на стороне пользователя, а также установкой «правильного» браузера и/или очисткой кэша. Отдельные кейсы, которые не решаются данными способами, будут описаны в следующих статьях.

WS

Большая часть проблем с быстродействием на уровне WS может быть решена за счет двух предыдущих пунктов. Отдельные кейсы, которые не решаются данными способами, будут описаны в следующих статьях.

Модель

Решение проблем с быстродействием моделей и оптимизации их производительности требует детального анализа причин и последовательного их устранения. Типовые кейсы описаны в статье (BAA20 Порядок анализа причин снижения производительности)

*-Статья будет периодически актуализоваться подразделением PDTS

 

 

 

 

 


АТОМС Консалтинг – официальный партнер Optimacros, партнер Anaplan в России с 2015 года

 

© ООО «АТОМС Консалтинг», 2012-2024.
На сайте использованы фотоматериалы unsplash.com