Планировщик заданий — это компьютерное приложение для управления автоматическим фоновым выполнением заданий программами . [1] Обычно это называют пакетным планированием , поскольку выполнение неинтерактивных заданий часто называют пакетной обработкой , хотя традиционное задание и пакетную обработку различают и противопоставляют; подробности см. на этой странице. Другие синонимы включают пакетную систему , систему управления распределенными ресурсами ( DRMS ), менеджер распределенных ресурсов ( DRM ) и, как правило, сегодня автоматизацию рабочих нагрузок ( WLA ). Структура данных выполняемых заданий называется очередью заданий .
Современные планировщики заданий обычно предоставляют графический пользовательский интерфейс и единую точку контроля для определения и мониторинга фоновых выполнения в распределенной сети компьютеров. Планировщикам заданий все чаще приходится организовывать интеграцию бизнес-операций в реальном времени с традиционными фоновыми ИТ-обработками на различных платформах операционных систем и в средах бизнес-приложений.
Планирование заданий не следует путать с планированием процессов , которое представляет собой назначение выполняющихся в данный момент процессов процессорам операционной системой .
Основные функции, ожидаемые от программного обеспечения планировщика заданий, включают:
Если программное обеспечение из совершенно другой области включает в себя все или некоторые из этих функций, можно считать, что это программное обеспечение обладает возможностями планирования заданий.
Большинство операционных систем , таких как Unix и Windows , предоставляют базовые возможности планирования заданий, в частности, с помощью at и пакетной обработки , cron и планировщика задач Windows . Услуги веб-хостинга предоставляют возможности планирования заданий через панель управления или решение Webcron . Многие программы, такие как СУБД , резервное копирование , ERP и BPM , также включают соответствующие возможности планирования заданий. Планирование заданий, предоставляемое операционной системой («ОС») или конкретной программой, обычно не обеспечивает возможности планирования за пределами одного экземпляра ОС или за пределами компетенции конкретной программы. Организации, которым необходимо автоматизировать несвязанную ИТ-нагрузку, также могут использовать дополнительные расширенные функции планировщика заданий, такие как:
Эти расширенные возможности могут быть созданы собственными разработчиками, но чаще всего их предоставляют поставщики, специализирующиеся на программном обеспечении для управления системами .
Существует множество концепций, которые являются центральными почти для каждой реализации планировщика заданий и широко известны с минимальными вариациями: задания, зависимости, потоки заданий и пользователи.
Помимо базовых инструментов планирования для одной ОС, существуют две основные архитектуры программного обеспечения для планирования заданий.
Планирование заданий имеет долгую историю. Планировщики заданий были одним из основных компонентов ИТ-инфраструктуры со времен первых мэйнфреймов. Сначала стопки перфокарт обрабатывались одна за другой, отсюда и термин « пакетная обработка ».
С исторической точки зрения мы можем выделить две основные эпохи планировщиков заданий:
По типу планирования также выделяются эпохи:
Для принятия решения о том, какое конкретное задание выполнять, используются различные схемы. Параметры, которые могут быть рассмотрены, включают в себя: