Заметки из Зазеркалья

01.06.2018

Механизм управления потреблением ресурсов

Данная статья является анонсом новой функциональности.
Не рекомендуется использовать содержание данной статьи для освоения новой функциональности.
Полное описание новой функциональности будет приведено в документации к соответствующей версии.
Полный список изменений в новой версии приводится в файле v8Update.htm.

Реализовано в версии 8.3.13.1513.

Механизм управления потреблением ресурсов решает три основные задачи:

  • Автоматический мониторинг потребления ресурсов на сервере 1С:Предприятия,
  • Повышение безопасности сервера за счет прерывания операций, выполнение которых влияет на производительность сервера в целом,
  • Сбор статистики потребления ресурсов за произвольный промежуток времени.

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

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

Счетчики и ограничения

Для управления механизмом мы добавили в настройки кластера два новых объекта:

  • Счетчик потребления ресурсов,
  • Ограничение потребления ресурсов.

001.png

Для управления этим механизмом вы можете использовать не только Windows утилиту администрирования кластеров (на рисунке), но и сервер администрирования (ras) c одним из кроссплатформенных инструментов: утилитой командной строки (rac) или java-интерфейсом.

Счетчик потребления ресурсов

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

002.png

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

Вы можете выбрать один из двух способов группировки собранных данных: по пользователям или по разделению данных. Таким образом, с помощью второго варианта вы можете накапливать статистику в разрезе абонентов.

005.png

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

006.png

Ограничение потребления ресурсов

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

003.png

Один из вариантов, которые вы можете выбрать, это Нет. С одной стороны, это способ временного отключения ограничения. А с другой стороны, это способ протестировать работу ограничения.

004.png

При превышении ограничения платформа записывает в технологический журнал соответствующее событие. Поэтому установив действие Нет, и поработав, например, в течение дня, вы можете посмотреть в технологическом журнале, сколько раз ограничение было превышено. Если это нормальное (подходящее) значение, тогда вы можете выбрать одно из действий, отличное от Нет, чтобы ограничить активность пользователей.

Прерывание текущего серверного вызова

Как вы могли заметить из предыдущего рисунка, мы реализовали новую возможность – прерывание текущего серверного вызова.

007.png

Теперь, если пользователь запустил выполнение какой-либо длительной операции на сервере (например, формирование отчета за 10 лет), вы можете прервать ее выполнение без завершения сеанса. Таким образом, пользователь сможет продолжить работу без перезапуска клиентского приложения.

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

Теги: кластер  8.3.13