Компьютерное приложение для управления автоматическим фоновым выполнением программных заданий
Планировщик заданий — это компьютерное приложение для управления автоматическим фоновым выполнением программ заданий . [1] Это обычно называется пакетным планированием , поскольку выполнение неинтерактивных заданий часто называется пакетной обработкой , хотя традиционное задание и пакет различаются и противопоставляются; подробности см. на этой странице. Другие синонимы включают пакетную систему , распределенную систему управления ресурсами ( DRMS ), распределенный менеджер ресурсов ( DRM ) и, как правило, сегодня автоматизацию рабочей нагрузки ( WLA ). Структура данных заданий для запуска известна как очередь заданий .
Современные планировщики заданий обычно предоставляют графический пользовательский интерфейс и единую точку управления для определения и мониторинга фоновых исполнений в распределенной сети компьютеров. Все чаще планировщики заданий требуются для организации интеграции бизнес-активностей в реальном времени с традиционной фоновой ИТ-обработкой на различных платформах операционных систем и в средах бизнес-приложений.
Планирование заданий не следует путать с планированием процессов , которое представляет собой назначение операционной системой текущих запущенных процессов процессорам .
Обзор
Основные функции, ожидаемые от программного обеспечения планировщика заданий, включают в себя:
- интерфейсы, помогающие определять рабочие процессы и/или зависимости заданий
- автоматическая подача заявлений о казнях
- интерфейсы для мониторинга исполнения
- приоритеты и/или очереди для управления порядком выполнения несвязанных заданий
Если программное обеспечение из совершенно другой области включает в себя все или некоторые из этих функций, можно считать, что такое программное обеспечение имеет возможности планирования заданий.
Большинство операционных систем , таких как Unix и Windows , предоставляют базовые возможности планирования заданий, в частности, at и batch , cron и Windows Task Scheduler . Услуги веб-хостинга предоставляют возможности планирования заданий через панель управления или решение webcron . Многие программы, такие как СУБД , резервное копирование , ERP и BPM , также включают соответствующие возможности планирования заданий. Планирование заданий, предоставляемое операционной системой («ОС») или точечной программой, обычно не предоставляет возможности планирования за пределами одного экземпляра ОС или за пределами сферы действия конкретной программы. Организации, которым необходимо автоматизировать несвязанную ИТ-нагрузку, могут также использовать дополнительные расширенные функции планировщика заданий, такие как:
- планирование в реальном времени на основе внешних непредсказуемых событий
- автоматический перезапуск и восстановление в случае сбоев
- оповещение и уведомление оперативного персонала
- генерация отчетов об инцидентах
- аудиторские следы для целей соблюдения нормативных требований
Эти расширенные возможности могут быть реализованы собственными разработчиками, но чаще всего их предоставляют поставщики, специализирующиеся на программном обеспечении для управления системами .
Основные понятия
Существует множество концепций, которые являются центральными практически для каждой реализации планировщика заданий и широко известны с минимальными изменениями: задания, зависимости, потоки заданий и пользователи.
Помимо базовых инструментов планирования для одного экземпляра ОС, существуют две основные архитектуры программного обеспечения для планирования заданий.
- Архитектура Master/Agent — историческая архитектура для программного обеспечения Job Scheduling. Программное обеспечение Job Scheduling устанавливается на одной машине (Master), в то время как на производственных машинах устанавливается только очень небольшой компонент (Agent), который ожидает команд от Master, выполняет их, а затем возвращает Master код выхода.
- Кооперативная архитектура — децентрализованная модель, в которой каждая машина способна помогать в планировании и может выгружать локально запланированные задания на другие кооперативные машины. Это обеспечивает динамическую балансировку рабочей нагрузки для максимального использования аппаратных ресурсов и высокой доступности для обеспечения предоставления услуг.
История
Планирование заданий имеет долгую историю. Планировщики заданий были одним из основных компонентов ИТ-инфраструктуры со времен первых мэйнфреймовых систем. Сначала стопки перфокарт обрабатывались одна за другой, отсюда и термин « пакетная обработка ».
С исторической точки зрения можно выделить две основные эпохи в истории планировщиков заданий:
- Эпоха мэйнфреймов
- Язык управления заданиями (JCL) на мэйнфреймах IBM . Первоначально основанный на функциональности JCL для обработки зависимостей, этот период характеризуется разработкой сложных решений по планированию (таких как Job Entry Subsystem 2/3 ), входящих в набор инструментов управления системами и автоматизации на мэйнфрейме.
- Эпоха открытых систем
- Современные планировщики на различных архитектурах и операционных системах. Поскольку стандартные инструменты планирования ограничены такими командами, как at и batch , потребность в стандартных планировщиках заданий для мэйнфреймов возросла с ростом внедрения распределенных вычислительных сред.
С точки зрения типа планирования также существуют различные эпохи:
- Пакетная обработка — традиционное выполнение фоновых задач на основе даты и времени на основе определенного периода, в течение которого ресурсы были доступны для пакетной обработки ( пакетное окно ). По сути, первоначальный подход мэйнфрейма был перенесен в среду открытых систем.
- Автоматизация процессов, управляемая событиями, — когда фоновые процессы не могут быть просто запущены в определенное время либо потому, что характер бизнеса требует, чтобы рабочая нагрузка основывалась на возникновении внешних событий (например, поступление заказа от клиента или обновление запасов в филиале магазина), либо потому, что отсутствует или недостаточно пакетного окна.
- Сервисно-ориентированное планирование заданий. Последние разработки в области сервисно-ориентированной архитектуры (SOA) привели к переходу к развертыванию планирования заданий в качестве повторно используемой службы ИТ-инфраструктуры, которая может играть роль в интеграции существующей рабочей нагрузки бизнес-приложений с новыми приложениями реального времени на основе веб-сервисов .
Планирование
Для решения, какую конкретную задачу запустить, используются различные схемы. Параметры, которые могут быть рассмотрены, включают:
- Приоритет работы
- Доступность компьютерных ресурсов
- Лицензионный ключ, если работа связана с использованием лицензионного программного обеспечения
- Время выполнения, выделенное пользователю
- Количество одновременных заданий, разрешенных для пользователя
- Расчетное время выполнения
- Прошедшее время выполнения
- Наличие периферийных устройств
- Наступление предписанных событий
- Зависимость от работы
- Зависимость файла
- Зависимость от подсказки оператора
Смотрите также
Ссылки
- ^ Влияние характеристик размера задания на эффективность планирования заданий