Применение APDEX для оценки производительности корпоративных систем 1С
При росте числа пользователей, увеличении объемов данных и усложнении бизнес-процессов требования к производительности систем 1С становятся все выше. Даже незначительные задержки при открытии форм, проведении документов или формировании отчетов могут снижать эффективность работы сотрудников и вызывать недовольство пользователей.
Для контроля качества работы информационной системы недостаточно отслеживать только технические показатели серверов приложения и серверов баз данных. Важно понимать, насколько быстро система реагирует на действия пользователей и соответствует их ожиданиям. Именно для этого применяется методика APDEX (Application Performance Index).
В статье рассмотрим, как работает методика APDEX, каким образом рассчитывается индекс, какие преимущества она дает при оценке производительности систем 1С и как использовать ее результаты для повышения эффективности корпоративных информационных систем.
- Понятие APDEX. Всегда ли важна скорость
- Почему недостаточно усреднять
- Принцип работы и формула APDEX
- Как выбрать значение T
- APDEX и метод подкручивания входящих данных T: как делать не надо
- Использование APDEX в проектах 1С
- APDEX и нагрузочное тестирование 1С
- Преимущества APDEX при оценке производительности
- Ограничения методики
- Наиболее популярные вопросы
Понятие APDEX. Всегда ли важна скорость?
При анализе производительности информационных систем часто используют такие показатели:
- время отклика интерфейса системы;
- количество операций в секунду;
- загрузка процессора сервера;
- использование памяти сервера;
- длина очереди к дискам;
- и другие.
Сами по себе цифры не всегда показывают, насколько удобно пользователю работать с системой. Например, задержка в 3 секунды может быть практически незаметна, если в это время человек читает или анализирует появившееся сообщение. А в другом случае даже 1 секунда ожидания будет мешать работе — например, если система «подвисает» при вводе каждого нового символа в строке поиска или при подборе вариантов.
Для одних задач даже задержка в несколько минут не имеет значения. Например, если ночью система автоматически формирует и рассылает отчеты, лишние 1–2 минуты никто не заметит. Но в других процессах важна каждая секунда: если от отчета зависит, можно ли отгрузить товар контрагенту или нужно заблокировать операцию из-за задолженности, даже 30 секунд ожидания могут стать критичными.
Для того, чтобы сгладить подобные неровности, учесть «человеческий фактор» и понять, что действительно важно для конечного пользователя, была разработана методика APDEX (Application Performance Index). Она позволяет перевести технические показатели производительности, в «индекс удовлетворенности пользователей», игнорируя ситуации непроизводительной работы, которые с точки зрения пользователей не критичны.
Почему недостаточно усреднять?
Представим ситуацию: после проведения тестирования специалисты получили следующие данные:
- среднее время выполнения операции — 2 секунды;
- максимальное время — 15 секунд;
- минимальное время — 0,5 секунды.
На первый взгляд показатели выглядят приемлемо. Однако они отвечают на вопрос, сколько пользователей столкнулось с длительным ожиданием.
Но среднее значение не всегда отражает полную картину. Если часть сотрудников получает результат за 1 секунду, а другая часть вынуждена ждать 10–15 секунд, среднее значение не отражает реальной картины.
Существует несколько альтернатив «среднему»:
- Медиана: это значение, которое делит упорядоченный ряд пополам. Она устойчива к выбросам, т. е. к случайным более низким, или более высоким значениям.
- Среднее усеченное: упорядочивается ряд и исключаются крайние, а от остальных значений считается среднее.
- Среднее взвешенное: используется, если нужно придать разный вес разным значениям.
- Возможны и другие варианты расчета.
Средние величины не всегда отражают реальную картину, т. к. неустойчивы к случайным выбросам, а учет всех операций и метрик — не всегда оправдан, т. к. медленная операция может выполняться фоном и никого не задерживать.
Принцип работы и формула APDEX
Формула расчета APDEX
Для расчета используется следующая формула:
APDEX = (число выполнений операции с удовлетворительной скоростью + число выполнений операции с допустимой скоростью/2) / число выполнений всех операций.
Пояснения к формуле
Когда пользователь выполняет какую-то операцию в информационной системе, например, проводит документ «Реализация товаров/услуг», то эту операцию можно отнести к одной из трех категорий:
- с удовлетворительной скоростью,
- с допустимой скоростью,
- с неудовлетворительной скоростью.
Прежде, чем говорить подробнее про каждую категорию, необходимо ввести понятие «время отклика, которое считается комфортным для пользователя», или «комфортное время выполнения ключевой операции». Его обычно обозначают латинской буквой T.
Итак, чуть подробнее про каждую категорию:
-
Удовлетворительные операции (скорость выполнения конкретной операции, которая приемлема по мнению основного пользователя): «время выполнения > 0 и <= Т».
Пользователь получает результат в течение заранее установленного времени, т. е. операция выполнилась за эталонное время или быстрее него.
- Допустимые операции (Tolerating): время выполнения > Т и <= 4 * Т.
Время выполнения превышает установленное значение T, но остается в пределах 4T.
- Неудовлетворительные операции (Frustrated): время выполнения > 4*Т.
Время выполнения превышает значение 4-х интервалов допустимого времени выполнения. Считается, что такие операции негативно влияют на пользовательский опыт и свидетельствуют о проблемах производительности.
Суть APDEX кратко
APDEX показывает отношение количества «быстрых» операций к общему количеству операций в системе. Если все операции «быстры», то и APDEX = 1 (то есть равен 100%). Однако на практике APDEX крайне редко бывает равен 1, скорее только близок к ней.
Как интерпретировать конкретное значение APDEX
Обычно результаты интерпретируют так:
Чем ближе показатель к единице, тем выше удовлетворенность пользователей и лучше производительность системы.
Как выбрать значение T
Выбор зависит от ожиданий пользователей. Обычно проводят интервью с ключевыми пользователями системы и задают вопросы:
- «Если документ такого-то вида проводится столько-то секунд это хорошо, или плохо?».
- «За сколько секунд он должен проводиться, чтобы это было „хорошо“ для вас?».
Если нет возможности провести интервью, то можно рассмотреть следующие временные ориентиры:
Важно понимать, что универсального значения не существует. Для каждой системы и каждого бизнес-процесса необходимо определять собственные критерии оценки.
APDEX и метод подкручивания входящих данных Т: как делать не надо
Пользователь заранее фиксирует то время, которое является для него «хорошим».
Дальше нужно работать над оптимизацией работы системы, но иногда возникает желание изменить целевое время Т для тех операций, которые не удается оптимизировать или к определенному сроку, или в рамках фиксированного бюджета.
Тем не менее, изменять значение Т нельзя, иначе результаты оптимизации будут искажены.
Использование APDEX в проектах 1С
Системы 1С часто обслуживают десятки, сотни и даже тысячи пользователей одновременно. Поэтому при внедрении крупных решений, а также в ходе работ по оптимизации важно получить объективную оценку результатов.
Большинство современных конфигураций на базе платформы «1С:Предприятие» основано на БСП (Библиотека стандартных подсистем), а в поставку включается подсистема «Оценка производительности» из «коробки». В ее состав входят:
- Блок для замера времени.
- Справочник «Ключевые операции».
- Набор прикладных процедур/функций для вызова кода начала замера и окончания замера из прикладного кода конфигурации 1С для замера выполнения конкретной операции (для типовых объектов замер уже преднастроен).
- Отчет «Оценка производительности», позволяющий оценить текущее значение APDEX в разрезе дней, часов (по отдельным операциям), а также получить усредненное значение в разрезе периодов.
Методика APDEX позволяет анализировать:
- Операции, которые начинаются и завершаются на клиенте (для пользовательских операций).
- Операции, которые начинаются и завершаются на сервере (для служебных механизмов).
При этом можно определить индивидуальные пороговые значения для различных бизнес-процессов. Например, для открытия карточки контрагента допустимым может считаться время до 2 секунд, а для формирования сложного финансового отчета — до 15 секунд.
Сегодня APDEX активно применяется для оценки производительности веб-приложений, корпоративных информационных систем и программных продуктов на платформе 1С:Предприятие 8.
Методика помогает объективно оценивать результаты нагрузочных тестов, сравнивать различные варианты конфигурации инфраструктуры и контролировать качество работы системы после изменений.
Включение использования подсистемы «Оценка производительности» с настройками по умолчанию позволяет следить за производительностью системы в динамике, даже если на текущий момент проблем с производительностью нет. Для включения замеров производительности по ключевым операциям с настройками «из коробки» нужно включить константу «Выполнять замеры производительности».
Помимо использования перенастроенных ключевых операций «из коробки» можно интегрировать в подсистему «Оценка производительности» и другие ключевые операции, например нетиповые отчеты, документы, обработки и т. д.
Для крупных внедрений рекомендуется использовать версию платформы 1С КОРП, т. к. она обладает расширенными возможностями. Кроме того, в рамках «Расширенной корпоративной лицензии 1С» можно получать дополнительные консультации и решение проблем производительности в приоритетном режиме, согласно SLA, в том числе с привлечением вендора 1С для решения сложных случаев.
APDEX и нагрузочное тестирование 1С
Во время нагрузочного тестирования специалисты моделируют работу пользователей в системе 1С. Тест может включать 100, 500 или 1 000 пользователей, а также смешанные сценарии работы.
После завершения теста собираются данные по времени выполнения операций. Без использования APDEX специалисту пришлось бы анализировать тысячи записей журналов производительности и трудоемко обосновывать наличие проблем производительности. Применение методики APDEX позволяет быстро получить единый показатель качества работы системы.
Например:
- 800 операций выполнены быстро;
- 150 операций выполнены с небольшими задержками;
- 50 операций выполнены слишком медленно.
И это не просто «быстро», или «медленно» по мнению исполнителя: эти данные о «хорошем времени выполнения» согласованы с Заказчиком и хранятся в системе.
На основании этих данных рассчитывается индекс APDEX и принимается решение о готовности системы к промышленной эксплуатации.
Преимущества APDEX при оценке производительности
Использование APDEX дает несколько важных преимуществ:
- Объективность. Методика позволяет сравнивать результаты различных тестов независимо от конфигурации оборудования и особенностей нагрузки.
- Простота интерпретации. Руководителю проекта гораздо проще оценить показатель APDEX = 0,92, чем анализировать тысячи строк технических логов.
- Ориентация на пользователя. Основной акцент делается не на технических характеристиках серверов, а на реальном восприятии производительности пользователями.
- Возможность контроля изменений. После обновления платформы 1С, изменения инфраструктуры или оптимизации запросов можно быстро определить, улучшилась ли производительность системы.
Если показатель APDEX указывает на снижение удовлетворенности пользователей, следующим шагом становится поиск узких мест и оптимизация системы.
Специалисты «1С-Рарус» помогут повысить производительность решений 1С и подготовить систему к росту нагрузки.
Ограничения методики
Методика APDEX не заменяет полноценный анализ производительности. Методика показывает общий уровень удовлетворенности пользователей, но не помогает определить конкретную причину возникновения проблем.
Поэтому APDEX рекомендуется использовать совместно с другими инструментами анализа:
- мониторингом серверов;
- анализом технологического журнала;
- замерами производительности СУБД;
- профилированием запросов;
- нагрузочным тестированием.
Только комплексный подход позволяет получить полную картину работы системы.
Высокая производительность важна только в сочетании со стабильностью работы системы. При проектировании корпоративной инфраструктуры необходимо учитывать не только скорость отклика, но и механизмы обеспечения отказоустойчивости.
Хотите оценить производительность вашей системы 1С?
Специалисты «1С-Рарус» помогут провести нагрузочное тестирование, оценить производительность системы с помощью APDEX, найти узкие места и определить, готова ли инфраструктура к росту нагрузки.
Наиболее популярные вопросы
Сам по себе индекс не зависит от числа пользователей. Однако увеличение нагрузки может привести к росту времени отклика операций, что отразится на итоговом значении APDEX.
Да. Например, можно отдельно оценивать работу бухгалтерии, отдела продаж или логистики, задавая различные критерии для ключевых операций каждого подразделения.
Да. Сравнение значений APDEX до и после обновления серверов, перехода на более производительную СУБД или изменения архитектуры системы позволяет количественно оценить результат выполненных работ.
Да. Методика одинаково применима как для локальных, так и для облачных внедрений 1С. Она позволяет контролировать качество работы системы независимо от варианта размещения инфраструктуры.
Наиболее распространенные ошибки — выбор слишком жестких или слишком мягких пороговых значений, отсутствие учета особенностей бизнес-процессов и попытка оценивать производительность только по одному показателю без дополнительного анализа системы.