Анализ производительности и оптимизация

Данная методика будет наиболее полезна в следующих случаях:

  • Проблемы производительности не локализованы в определенных бизнес-процессах, а “равномерно распределены” по всей функциональности системы. Все (или почти все) пользователи жалуются на недостаточную производительность системы, но не могут назвать одну конкретную операцию, производительность которой их не устраивает. Субъективная оценка формулируется так: “все работает медленно”.
  • В системе имеются четко локализованные проблемы производительности, которые не воспроизводятся на тестовой базе в однопользовательском режиме. Например, пользователи жалуются на недостаточную производительность документа “РеализацияТоваровУслуг”, но при проведении этого документа в нерабочее время и/или на тестовой базе производительность оказывается в норме.
  • В системе имеется большое количество хорошо локализованных проблем производительности. Задача заключается в том, чтобы максимально быстро определить, с чего именно следует начинать оптимизацию системы. Необходимо обнаружить источник (или источники) всех имеющихся проблем и найти наиболее узкое место в системе.
  • Система запускается в рабочую эксплуатацию после существенного изменения условий работы системы:
    • изменилась нагрузка на систему;
    • изменилась конфигурация;
    • изменилась используемая версия конфигурации;
    • изменилась используемая СУБД;
    • изменилась конфигурация оборудования;
    • и т. п.
  • На начальном этапе эксплуатации системы ее производительность была признана удовлетворительной, но по мере наполнения информационной базы производительность стала падать.
  • Планируется увеличение нагрузки на систему, и необходимо гарантировать отсутствие в системе скрытых проблем, которые могут привести к падению производительности при росте нагрузки.
  • Система стабильно работает с удовлетворительной производительностью. Необходимо гарантировать своевременную и точную диагностику проблем производительности в случае их возникновения.

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