Статья адресована сотрудникам, ответственным за использование ИСУП «Адванта», которая установлена на своих ресурсах.
Здесь содержатся:
Читайте ниже о том, как их устранить.
1. Установлены не все версии дополнительного ПО для работы Адванта, данное ПО не обновляется с достаточной периодичностью.
Пояснение: для работы ПО Адванта необходимо установить библиотек расширений MS .Net Framework, Visual C++ Redistributable x64 и x86, ASP и др. согласно инструкции тут.
Рекомендация: произвести установку дополнительного ПО, согласно инструкции.
2. Установка ПО Адванта на сервер IIS, который ранее был сконфигурирован под другие приложения с параметрами отличных от стандартных. Применение не стандартных настроек IIS ИТ персоналом. Как вариант IIS – сервер мог быть ранее сконфигурирован через Групповые политики Active Directory.
Диагностика: утилита GPRESULT с параметром /H GPReport.html. Для запуска нужны права Администратора.
Рекомендация: произвести установку ПО Адванта на вновь установленный сервер. Вывести сервер из-под действия Групповых политик, влияющих на конфигурацию IIS-сервера.
3. Ошибки в конфигурационном файле «client.config», допущенные при установке ПО Адванта или при обслуживании, обновлении.
Пояснение: Ошибки или отсутствие параметров «register» в секции «container» могут привести к частичной недоступности функционала ПО Адванта, так и к полному отказу системы.
Решение:
4. Несоответствие аппаратно-программной части пользовательской станции рекомендациям, указанным на официальном сайте здесь.
1. Используется единый сервер для размещения БД и ПО Адванта без дополнительной настройки производительности использования ОЗУ.
Пояснение: Роли сервера приложений Адванта и БД MS SQL рекомендуется размещать на разных виртуальных или физических серверах. Иначе возможна нехватка ОЗУ для ПО Адванта при стандартных настройках инсталляции MS SQL.
2. Использование низкопроизводительных дисков для размещения файлов БД и Файлов транзакций.
Диагностика: одним из симптомов может служит значение «Длина очереди диска» более 2 при использовании стандартного диска без RAID, иначе умножается количество дисков на два. Монитор ресурсов – Диск.
Рекомендация: Файлы баз данных и логов транзакций рекомендуется размещать на высокопроизводительных дисках (подробнее).
3. Расположение файлов Базы данных и файлов Лога Транзакций на одном диске.
Пояснение: Такое расположение способствует конкуренции за ресурсы при расположении на одном диске, особенно при включении Полной модели восстановления БД.
4. Включение Полной модели восстановления, при этом переполняется журнал транзакций по разным причинам.
Пояснение: согласно инструкции модель восстановления в настройках БД должна стоять в значении: Простая. Переполнение журнала транзакций может возникнуть по различным причинам (подробнее). На БД MS SQL необходимо обязательно выполнять резервное копирование и задачи обслуживания типа перестроение индексов, обновление статистики, c определённой периодичностью. Во избежание снижения производительности обслуживание рекомендуется проводить в ночное время.
5. Подготовка сервера баз данных MS SQL.
При создании или восстановлении БД необходимо выполнить инструкции, описанные тут.
Системные требования, указанные в инструкции, рекомендуется выбирать в соответствии с рекомендуемыми значениями здесь.
При этом важно учитывать все рекомендуемые значения ОС и дополнительного ПО и их конфигураций, и закладывать ресурсы еще и на них.
Особое внимание необходимо уделять средствам защиты и информационной безопасности, средствам шифрования, которые могут потреблять значительные ресурсы, подробнее ниже.
Требования к пропускной способности сетевого интерфейса указана здесь.
Рекомендуется проверить реальную пропускную способность через копирование файла объемом не менее 2 Гб, замерить среднюю скорость передачи.
При использовании сетевых файловых ресурсов тест с копированием объемного файла нужно выполнить и с использованием этих ресурсов.
Пользователи любой системы, в том числе и системы «Адванта», могут обращаться с вопросом типа «У меня система тормозит». Это субъективная оценка, и ее необходимо в первую очередь перевести в числовую плоскость, выполнить замеры и оценку объема производимых действий.
Обработка большого количества данных не может выполняться быстро, в любой системе, и требует времени.
Например, невозможно построить тяжелый отчет с огромным объемом данных, за 10 секунд, или переместить огромный же объем данных, поэтому необходимо соотносить выполнение объема операций и ожидаемого времени.
Определение конкретного «тормозящего» действия:
Поэтому подготавливая данные по уточнению проблемных действий, вы сильно упростите процесс поиска и сэкономите время, и это значит, что вероятность решения этой проблемы повышается.
Если к вам обращается пользователь, с проблемой «система тормозит»:
Также важен и контекст выполнения, для этого стоит попробовать выполнить действие:
Самый лучший способ – в той же локальной сети, в которой находится и сервер системы.
Определите также, не связана ли проблема пользователя с пиковой нагрузкой:
Вполне может оказаться, что проблема фиксируется только из одного сегмента сети и отсутствует в других, в этом случае скорее всего необходимо решать проблему скорости доступа пользователя к серверу.
Часто уже в ходе выполнения этих проверок удается найти зависимость скорости выполнения от условий, в которых это выполняется и устранить их без обращения техническую поддержку.
Операция | Время выполнения | Объем данных | Пользователь | Рабочая станция и сеть | Версия |
---|---|---|---|---|---|
Открытие проекта в Ганте https://etalon.a2nta.ru/cmn.aspx?pageName=Projects.Project&uid=daba2cbb-a4a9-4708-9366-5dd3ead1f172 | 2 минуты | 17780 задач | Иванова Мария (лиц.руководитель) | Windows 8, IE 10, 2Гб оперативной памяти. Соединение по vpn из филиала к центральному серверу. В локальной сети на Chrome открывается за 10 секунд. | 3.09.2968.23496-3b0e72b |
Создание задачи в Ганте https://etalon.a2nta.ru/cmn.aspx?pageName=Projects.Project&uid=daba2cbb-a4a9-4708-9366-5dd3ead1f172 | 1 минута | – | Windows 8, IE 10, 2Гб оперативной памяти. Соединение по vpn из филиала к центральному серверу. С соседнего рабочего места из FireFox создается за 3 секунды |
Разработчики регулярно проводят оптимизацию системы, улучшая время отклика в наиболее часто используемых операциях.
Поэтому после того, как вы получили сообщение об обновлении, и в нём указано, что ранее «тормозившая» операция оптимизирована, проведите замеры. Без регистрации реестра «тормозящих» операций (пример в разделе 2) практически невозможно в дальнейшем объективно оценить изменения.
Если произошло улучшение отклика системы до приемлемого, то закройте соответствующий вопрос в технической поддержке «Адванты».
Есть несколько известных настроек, которые могут приводить к ухудшению производительности, но улучшают взаимодействие системы с пользователем.
В зависимости от требований бизнес-пользователей и возможностей аппаратного обеспечения, выбирайте оптимальный вариант.
Ниже перечень настроек, которые влияют на производительность.
При этом, если показатель не сложно считается и данные в отчет выводятся не большим количеством (несколько десятков записей), то изменения в скорости могут быть незаметными, на уровне погрешности замера. Если же данных много (сотни, или тысячи строк), показателей несколько и считаются они сложно, то падение скорости создания отчета будет заметно.
В этом же отчете есть возможность выводить дочерние объекты, которые также могут замедлять скорость формирования самого отчета. Здесь также, все зависит от объема данных отчета и количества дочерних объектов.
Табличные отчеты, которые содержат несколько отчетов источников могут формироваться заметно дольше.
Дело в том, что для формирования итогового листа такого отчета, сначала формируются все отчеты источники (при этом выбираются все данные, а не постранично, как если бы отчет источник просматривался из интерфейса системы самостоятельно), затем уже все выгруженные данные с помощью формул размещаются на промежуточных и итоговом листе. Т.е. время на формирование такого отчета складывается из времени формирования каждого отчета источника, и затем еще время на формирование расчетных листов табличного отчета.
При размещении на карточке объекта большого количества виджетов, считающихся онлайн, также снижает время открытия карточки объекта.
Если загружается большое количество строк Excel в систему, то время загрузки также может быть значительным.
Загрузка становится заметной при объёме больше тысячи (1000) строк, а в некоторых случаях и меньшего объема (зависит от разных условий).
Процедуры обработки, как правило выносятся по времени на периоды малой загрузки (ночь/вечер), но если это невозможно, то могут использоваться и в рабочее время.
Скрипты создают большой набор обращений к системе ⇒ могут увеличивать загрузку сервера системы в период своей работы ⇒ мешают быстрой работе других пользователей.
Процедуры интеграции являются аналогом предыдущего пункта о скриптах, поскольку используют аналогичные алгоритмы доступа к данным системы.
Если в кубах:
то, как правило, пересчет такого куба в режиме онлайн, когда пользователи постоянно вносят данные требующие пересчета этого куба, занимает существенное время (куб почти все время находится в состоянии пересчета) и дает заметную нагрузку на систему в целом, что может приводить к зависаниям страниц и функций системы.
В системах с большим количеством данных рекомендуется переводить все, без исключения, ОЛАП кубы на режим обновления «Один раз в сутки» или «По таймеру» (с интервалом срабатывания раз в несколько часов). Иначе есть значительная вероятность возникновения блокировок транзакций в базе данных, что приведет к возникновению проблем, описанных в предыдущем абзаце.
Как и в предыдущем пункте, есть и другие настройки, также влияющие на скорость выполнения (как правило такие настройки не требуются):
Известные способы ускорить работу системы:
Если установлен расчет по таймеру, то при открытии карточек объектов будут использоваться данные уже рассчитанные и сохраненные при последнем пересчете. Значение может немного запаздывать (на период пересчета), но часто такая оперативность и не требуется, тем более у каждого такого виджета есть кнопка пересчета если требуется получить актуальные данные.
Релиз | Задача | Что сделано и ожидаемый эффект | Полученный эффект |
---|---|---|---|
3.09 | Асинхронные события | События теперь создаются не в момент совершения действия пользователем, а после, асинхронно в отдельном потоке. И не влияют на время ответа с сервера пользователю. | Средний прирост в производительности по операциям составил до |
0,45 | |||
Офлайновый режим обновления виджетов | Создана возможность включения офлайнового режима обновления виджетов с пересчетом по таймеру или запросу пользователя. Это решает проблему, когда система «виснет» при одновременном открытии большого числа страниц с виджетами. | Ускорилось в несколько раз | |
Ускорение разворачивания проекта из шаблона | Сделана оптимизация создания прав новых объектов, что должно ускорить делегирование. Так же это должно ускорить другие операции при которых происходит создание прав. | Ускорение до 1,7 раз | |
Ускорение делегирования | Ускорилось до 35 раз | ||
Ускорение принятие полномочий задач | Ускорение до 8,5 раз | ||
Ускорение открытия форм | Сделано ускорение открытия форм | Ускорение до 2х раз, на форме в 100 срок | |
Ускорение сохранения форм | Сделано ускорение сохранения форм | Ускорение до 12 раз, на форме в 100 срок | |
3.11 | Ускорение загрузки записей справочников через MS Excel | Сделано ускорение загрузки записей справочников через MS Excel | Ускорение до 6 раз |
Избавление от длинной транзакции при удалении проекта с большим числом задач | Сделано уменьшение времени транзакции при удалении проектов, что позволит избежать ошибок взаимоблокировки и ускорит удаление проектов. | Ускорение до 10 раз на проекте из 4тыс задач | |
Избавление от длинной транзакции при импорте проектов | Сделано разбиение импорта проектов из MS Project на маленькие транзакции, что должно ускорить импорт проектов и уменьшить количество блокировок в базе данных. | Ускорение до 1,4 раза | |
Ускорение открытия дискуссии | Сделано ускорение открытия дискуссии | Ускорение до 2 раз | |
Ускорение сохранения ответа на дискуссию | Сделано асинхронное сохранение ответа на дискуссию без перезагрузки страницы. Это должно ускорить сохранение ответа на дискуссию. | Ускорение до 1,7 раза | |
Избавление от длинной транзакции при копировании проектов | Сделано уменьшение времени транзакции, что должно ускорить копирование проектов и уменьшить количество блокировок в базе данных. | Данное изменение дает возможность выполнять трудоемкие процедуры в системе, при этом не блокируя работу других пользователей | |
Избавление от длинной транзакции при разворачивании проектов из шаблона | |||
Ускорение сохранения участника проекта | Сделано асинхронное сохранение участника проекта. Это должно ускорить сохранение участника проекта. | Сократилось до 4 раз при одновременном добавлении в проект участниками 50 пользователей | |
Ускорение времени загрузки входящих сообщений | Сделано отдельная загрузка счетчиков и входящих. И предварительная загрузка данных для входящих на клиенте, для открытия следующей страницы входящих без обращения к серверу. Это должно ускорить загрузку входящих. | ||
3.14 | Система диагностики проблем производительности | Разработана встроенная система логирования действий пользователей, которая позволит делать глубокий анализ для выявления проблем производительности. Сделана выгрузка логов системы через интерфейс. | |
Системные параметры в отчетах «Проекты и Работы» | В настройки отчета добавлены параметры, которые ранее могли считаться только в ОЛАП кубах | Есть возможность не настраивать ОЛАП кубы только для получения показателей, плюс время выполнения отчетов уменьшается, на большом объеме данных до 5 раз. При замене в уже настроенных отчетах, используемые ОЛАП кубы можно перевести на расчет раз в сутки, или удалить, если их данные больше нигде не используются. | |
Улучшен отбор задач для отчетов | В фильтр добавлена дата начала задач (объектов). В отчетах Проекты и работы можно реализовать логику, которую ранее приходилось делать только в табличных отчетах. | Упрощены алгоритмы фильтрации и выбора данных. Ускорение выполнения табличных отчетов сильно зависит от объема данных в отчете. | |
Оптимизация диаграммы Ганта | Изменена логика выбора и сохранения данных системы для построения Ганта. | В некоторых случаях скорость сохранения может увеличиться в несколько раз. | |
Отчет «Проекты и работы», при использовании справочников | Изменен алгоритм выборки данных справочников, для отображения. | Изменения будут заметны на большом объеме данных, скорость формирования отчета может вырасти до 20% | |
Заменен способ получения ОЛАП показателей для отчета «Проекты и работы» и для виджетов на карточке объекта | Ожидается улучшение параметра по использованию оперативной памяти при формировании отчетов «Проекты и Работы», использующих ОЛАП показатели. | На некоторых отчетах объем потребляемой памяти в момент запуска может измениться до 2х раз |
Кроме указанных, ведутся и другие работы, работа по улучшению производительности будет вестись постоянно.
На стороне сервера также могут находиться потенциал роста скорости работы системы.
Вот несколько рекомендаций:
shared memory
, чтобы разграничить потребление памяти между IIS и SQLС версии системы 3.10, добавлена новая функция для сбора логов операций, которая может быть запрошена разработчиком при необходимости. Управление логами выполняется из пункта «Система сбора информации об ошибках», в Общих настройках системы.