Управление фоновыми задачами

Сервис «Управление фоновыми задачами» предоставляет возможность централизованного управления, мониторинга и запуска фоновых задач в распределенной системе. Данный сервис реализован на основе Quartz, который периодически, в зависимости от настроек, выполняет запуск фоновых задач для выполнения процессов в рамках других смежных сервисов Платформы.

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

  • Создание фоновой задачи – позволяет создать новую фоновую задачу в планировщике.
  • Изменение фоновой задачи – позволяет изменить атрибуты существующей фоновой задачи на основании входящих параметров.
  • Удаление фоновой задачи – позволяет удалить существующую фоновую задачу и все ее триггеры из Платформы.
  • Получение истории выполнения задач – позволяет получить из планировщика список выполненных задач и их параметры с учетом фильтров и постраничного разбиения.
  • Удаление записи состояния выполненных задач – позволяет удалить данные о состояниях фоновых задач из планировщика по указанным фильтрам.
  • Получение атрибутов фоновой задачи – возвращает перечень параметров заданной фоновой задачи и ее триггеров.
  • Остановка фоновых задач – позволяет приостановить выполнение фоновых задач, входящих в указанную группу, или отдельной фоновой задачи. При выполнении остановки фоновой задачи происходит остановка всех ее триггеров.
  • Возобновление фоновых задач – позволяет возобновить выполнение фоновых задач, входящих в указанную группу, или отдельной фоновой задачи. При выполнении возобновления фоновой задачи происходит снятие с паузы всех ее триггеров.
  • Получение списка фоновых задач – позволяет получить список ранее созданных в Платформе фоновых задач и их триггеров, а также их параметров.
  • Получение списка триггеров для задачи – позволяет получить список триггеров для указанной фоновой задачи с учетом постраничного разбиения.
  • Получение списка групп фоновых задач – позволяет получить список ранее созданных в Платформе групп фоновых задач с учетом постраничного разбиения.
  • Получение списка классов фоновых задач – позволяет получить список классов задач из планировщика для отображения и возможности выбора на web-клиенте с учетом постраничного разбиения.
  • Получение атрибутов триггера – возвращает перечень параметров заданного триггера фоновой задачи.
  • Изменение атрибутов триггера фоновой задачи – позволяет обновить атрибуты заданного триггера фоновой задачи.
  • Удаление триггера – позволяет удалить из Платформы ранее созданный триггер для фоновой задачи.
  • Прерывание выполнения задачи по триггеру – позволяет прервать выполнение ранее запущенной задачи по триггеру.
  • Запуск триггера – позволяет запустить выполнение триггера фоновой задачи.
  • Приостановка триггера – позволяет приостановить выполнение триггера фоновой задачи.
  • Добавление триггера к существующей задаче – позволяет создать новый триггер для существующей фоновой задачи.
  • Удаление всех триггеров задачи – позволяет удалить из Платформы все ранее созданные триггеры выбранной фоновой задачи.
  • Получение состояния задач по запущенным, выполненным триггерам – позволяет получить через протокол WebSocket события из Apache Kafka топика, начиная с текущей даты и времени установления соединения по WebSocket, для отображения данной информации в планировщике.
  • Получение количества выполняемых задач и задач, завершенных с ошибками – позволяет определить и получить общее количество выполняющихся на данный момент фоновых задач и количество ошибок для отображения данной информации в планировщике.
  • Обновление состояния задачи – позволяет изменить атрибуты существующей задачи на основании входящих параметров.
  • Остановка планировщика – позволяет выполнить приостановку работы планировщика.
  • Старт планировщика – позволяет выполнить запуск планировщика после его остановки.
  • Получение статуса планировщика – позволяет определить текущий статус планировщика.