Диагностика и оптимизация 1С Предприятие 8

 

Использование System Monitor для диагностики проблем производительности 1С: Предприятия 8

   System Monitor представляет собой стандартное средство для диагностики проблем производительности операционной системы, различных компонент приложений  и используемого оборудования. С его помощью можно  измерять производительность, как локального компьютера, так и других компьютеров в сети. System Monitor является основным инструментом для идентификации узких мест в системе. Компоненты анализируемой системы интерпретируются как объекты, параметры которых представляются в виде набора счетчиков, при этом для каждого объекта определен свой набор счетчиков. Некоторые приложения в  процессе установки расширяют системный набор своими, специфическими объектами и счетчиками, характеризующими производительность этого приложения. Например, при установке Microsoft SQL Server к стандартному  набору объектов и счётчиков операционной системы добавляются специфические объекты и счётчики сервера баз данных.

 

 

Потенциальные узкие места, которые могут оказать наибольшее влияние на производительность:

Память

  • Недостаток объема оперативной памяти, установленной на компьютере, оказывает негативное влияние на производительность всех компонент 1С:Предприятия 8 и Microsoft SQL Server.
  • При увеличении количества пользователей и объема информационной базы требования к этому ресурсу со стороны сервера 1С:Предприятия 8 и Microsoft SQL Server  возрастают.
  • Нехватка памяти приводит к увеличению интенсивности страничного обмена между файлом подкачки и физической памятью, что существенно снижает производительность системы.

Процессоры

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

Дисковые операции

  • Производительность дисковой подсистемы является одним из решающих факторов, определяющих производительность Microsoft SQL Server.
  • На производительность сервера 1С:Предприятия 8 влияния, как правило, не оказывает.

Конфликты блокировок Microsoft SQL Server

  • Один из основных факторов снижения производительности в многопользовательском режиме
  • Вероятность возникновения конфликтов блокировок можно снизить за счет доработки прикладного решения

 

Идентификация узких мест

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

Объект

Основные счетчики

Описание

Основные признаки наличия проблемы

Варианты решения проблемы

Память

Memory \ Pages/sec

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

Нормальное значение этого счетчика должно быть близко к нулю. Увеличение показания этого счетчика свыше 20 страниц в секунду говорит о необходимости увеличения объема оперативной памяти.

Увеличение объема оперативной памяти, установленной на компьютере.

Перенос приложений, интенсивно использующих оперативную память, на отдельный компьютер. Например, установка сервера 1С:Предприятия 8 и Microsoft SQL Server на разных компьютерах.

Процессор

Processor \ %Processor Time

Время, которое процессор тратит на выполнение полезной работы, в процентах от общего системного времени.

Если среднее значение величины утилизации процессора превышает 85%, значит, процессор – узкое место в системе.

Замена процессоров на более быстродействующие.

Увеличение количества процессоров.

Перенос приложений, интенсивно использующих процессор на отдельный компьютер. Например, установка сервера 1С:Предприятия 8 и Microsoft SQL Server на разных компьютерах.

System \ Processor Queue Length

Длина очереди к процессору.

Если в течение длительного времени средняя длина очереди превышает значение 2, то это говорит о том, что процессор является узким местом.

Дисковая система

Physical Disk \ %Disk Time

Процент времени, которое диск был занят, обслуживая запросы чтения или записи.

Снижение утилизации процессоров сервера

Установка более быстрых дисков.

Использование дисков с интерфейсом SCSI.

Использование аппаратного RAID - контроллера.

Увеличение количества дисков в RAID - массиве.

Physical Disk \ Avg. Disk Queue Length

Показывает эффективность работы дисковой подсистемы. Представляет собой среднюю длину очереди запросов к диску.

Увеличение очереди запросов к дисковой подсистеме

Сетевой интерфейс

Network Interface \ Bytes Total/sec

Скорость, с которой происходит получение или посылка байт через сетевой интерфейс

Значение этого счётчика не должно превышать 65% величины пропускной способности сетевого адаптера.

Установка сетевого адаптера с более высокой пропускной способностью (если позволяют параметры сети).

Установка дополнительного сетевого адаптера.

Блокировки

SQL Server: Locks \ Lock Wait Time (ms)

Показывает общее время ожидания (в миллисекундах) выполнения запросов на блокировку за последнюю секунду

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

Сокращение времени выполнения транзакции.

Обеспечение единого порядка доступа ко всем ресурсам.

Оптимизация запросов в прикладном решении.

Правильная установка признаков индексирования у реквизитов объектов конфигурации позволяет существенно сократить диапазон блокировок.

Поддержание актуальности индексов и статистики Microsoft SQL Server.

Использование в запросах оператора "ДЛЯ ИЗМЕНЕНИЯ".

SQL Server: Locks \ Average Wait Time (ms)

Показывает среднее время ожидания (в миллисекундах) выполнения каждого запроса на блокировку

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

Взаимные блокировки

SQL Server: Locks \ Number of Deadlocks/sec

Показывает количество запросов на блокировку в секунду, которые закончились взаимной блокировкой

Ненулевое значение счетчика

 

 

Основные показатели низкой производительности

1. Производительность системы не удовлетворяет требованиям бизнес-логики автоматизируемого предприятия на значительной части операций;

2. Большая часть пользователей системы жалуется на:

    2.2 Неприемлемую общую производительность системы;

    2.3 Неприемлемую производительность на отдельных операциях;

    2.4 Внезапное ухудшение производительности;

    2.5 Частое возникновение ошибок:

          2.6.1 «Lock request time out period exceeded»;

          2.6.2 «Превышено максимальное время ожидания предоставления блокировки»;

          2.6.3 «Transaction was deadlocked on lock resources with another process and has been chosen as deadlock victim»;

          2.6.4«Конфликт блокировок при выполнении транзакции»

 

Если производительность системы признается неудовлетворительной, то необходимо провести анализ загруженности оборудования, в соответствии с данными рекомендациями:

Выполнить ряд замеров со следующими счетчиками производительности:

 

Память – обмен страниц \ сек

 

Процессор - % загруженности процессора

 

Система – длина очереди процессора

 

Физический диск – средняя дли очереди диска

 

Сеть – обмен байт\сек (исключено, так как все на одном сервере и сетевая активность минимальная)

 

Анализ данных замера

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

Эти значения отображаются в нижней части основного окна «Системного монитора».


 

Ниже в таблице приведены описания счетчиков «Системного монитора» и предельные значения для каждого из них.

При превышении этих значений следует рассмотреть вопрос об увеличении производительности соответствующей аппаратной компоненты. 

 

Группа

Счетчик

Описание

Критерий

Узкое место

Память

обмен страниц \ сек

Интенсивность обмена между дисковой подсистемой и оперативной памятью

Среднее: около 0

Максимальное: не более 20

Недостаточно оперативной памяти

Процессоры

% загруженности процессора

Загруженность процессоров

Не более 70% в течение длительного времени

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

Система

длина очереди процессора

Очередь к процессорам

Не более 2 * количество ядер процессоров в течение длительного времени

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

Физический диск

средняя дли очереди диска

Очередь к дискам

Не более 2 * количество дисков, работающих параллельно

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

Сетевой интерфейс

обмен байт\сек

Скорость передачи данных через сеть

Не более 65% от пропускной способности сетевого адаптера

Недостаточная пропускная способность сетевого интерфейса