Справка Business Studio
Переход на сайт нейросети Perplexity AI для поиска информации о Business Studio. Подробнее о возможности см. по ссылке

Содержание справки

Администрирование фоновых задач

Для администрирования фоновых задач в Business Studio используется Hangfire.

Hangfire — это система фонового выполнения задач в .NET приложениях. Она применяется для:

  • выполнения фоновых задач;
  • планирования задач по расписанию;
  • повторяющихся задач;
  • отложенных задач;
  • обработки очередей.

Данные Hangfire хранятся в Redis и включают:

  • задания;
  • текущее состояние заданий;
  • историю переходов состояний задач (очередь, выполнение, завершение, ошибка и т.д.).

Доступ к администрированию фоновых задач осуществляется пунктом Меню администратора «Фоновые задачи».

Рисунок 1 - Панель управления


В Hangfire Dashboard есть два раздела для мониторинга: Realtime и History. Они предназначены для анализа выполнения фоновых задач и их состояния во времени.

Realtime — отображает статистику в реальном времени: количество задач по статусам (например, выполняющиеся, успешно завершённые, завершённые с ошибкой). Позволяет видеть текущее состояние выполнения задач и изменения их статусов.

History — отображает агрегированную статистику за выбранный период времени: количество выполненных задач, количество успешных и завершённых с ошибкой, а также общие показатели выполнения задач (включая распределение по времени).

Эти разделы позволяют оценивать поведение фоновых задач во времени, но не отображают детальную информацию о состоянии очередей — для этого используются отдельные разделы Dashboard (например, Jobs и Servers).

В данном интерфейсе во вкладке Jobs доступны следующие статусы состояния задач (см. Таблицу 1).

Статус задачи Описание
Enqueued Задачи, находящиеся в очереди и ожидающие выполнения.
Scheduled Отложенные задачи, запланированные на выполнение в будущем.
Processing Задачи, находящиеся в процессе выполнения.
Succeeded Успешно выполненные задачи.
Failed Задачи, завершившиеся с ошибкой выполнения.
Deleted Задачи, удалённые из очереди и более не подлежащие выполнению.
Awaiting Задачи, созданные, но ещё не готовые к выполнению.
Таблица 1. Статусы состояния задач и их описание


В разделе Jobs отображается информация о том, какие очереди обслуживает сервер, а также следующие параметры:

  • Length – количество задач, находящихся в очереди и ожидающих выполнения.
  • Fetched – количество задач, уже взятых воркером в обработку.
  • Next jobs – количество задач, ожидающих выполнения следующими.

Пример вкладки Jobs представлен на Рисунке 2.

Рисунок 2 - Вкладка Jobs


Раздел Servers показывает, какие сервера используются в данный момент. Описание параметров раздела Servers представлено в Таблице 2.

Параметр Описание
Name Название сервера.
Workers Количество задач, выполняемых сервером одновременно, то есть уровень параллельной обработки фоновых задач.
Queues Какие очереди обслуживает сервер.
Started Время запуска сервера.
Heartbeat Время последней отметки сервера в системе, используемое для контроля его работоспособности. Если сервер не отправляет Heartbeat в течение заданного таймаута, он считается недоступным, а его незавершённые задачи возвращаются в очередь Enqueued.
Таблица 2. Параметры вкладки Servers и их описание


Пример вкладки Servers представлен на Рисунке 3.

Рисунок 3 - Вкладка Servers