Benutzer:Michael.Kramer/JobScheduler
Michael.Kramer/JobScheduler | |
---|---|
Basisdaten |
JobScheduler is an open-source computer application for enterprise-level job scheduling used for process automation. JobScheduler is used to launch executable files and shell scripts and to run database procedures automatically.
Jobs are configurable as Web services providing interoperability with enterprise applications. It stores all information in a backend database system running on either MySQL, PostgreSQL, Firebird, SQL Server, Oracle, DB2 or Sybase ASE.
Key functionality
[Bearbeiten | Quelltext bearbeiten]- Launch executable files, shell scripts and database procedures automatically
- Trigger events for job starts such as calendar events, monitoring of incoming files and API events initiated by external applications
- Configure jobs as Web Services to provide interoperability with SOA architectures (BPEL)
Mode of operation
[Bearbeiten | Quelltext bearbeiten]- Used for batch scheduling, JobScheduler runs as Unix daemon or Windows Service in the background
- Job control is carried out by command line or by a built-in graphical user interface
- A graphical XML editor for job configuration and a web GUI for job management are available
JobScheduler can be controlled by the built-in web server's graphical user interface. JobScheduler uses an XML file for the configuration of executable files or shell scripts and to set the timing and frequency of job starts.
Job execution
[Bearbeiten | Quelltext bearbeiten]- Jobs are the basic unit for the processing of executable files, shell scripts, stored procedures and of job implementations based on the Job Scheduler API.
- Jobs can be executed independently from one another. Depending on the execution result (i.e. exit status signalling success, failure or a specific exit code) of a job, any number of successor jobs can be started.
- Jobs can be executed in parallel up to a configurable number of simultaneous tasks.
- Job chains can be seen as an assembly line on which multiple job nodes are passed. Therefore, each job comprises exactly one step in the processing of a job chain. Job dependencies based on execution results of the respective job nodes can be configured for a job chain.
- The monitoring of directories can trigger job starts, this allows the integration of legacy applications into the business workflow as file transfer is a widespread means to integrate applications.
- Job starts triggered by built-in calendar, by command line or by web interface.
- Other applications can start jobs or otherwise control the Job Scheduler via API’s.
Key features
[Bearbeiten | Quelltext bearbeiten]- Job activities can be limited to timeslots. JobScheduler supports any number of timeslots, which can be configured according to individual job requirements.
- JobScheduler allows the assignment of job priorities.
- Job history protocols are optionally stored in a database.
- The locking feature prevents two jobs accessing the same resource, e.g. a file or database, at the same time. In other words, only one process at a time can receive the exclusive right to access the resource as long as the lock is active.
- Standard job packages e.g. for log rotation and cleanup, sanity checking, job execution by remote JobScheduler instances, FTP file transfer.
- Notifications for job execution results per email, configurable logging and monitoring of logs.
- API to implement jobs and job scripts, e.g. for complex conditional processing.
- Different graphical user interfaces: A built-in interface for job control and a GUI for managing configurations for several Job Schedulers on different server systems.
Additional features
[Bearbeiten | Quelltext bearbeiten]- High-availability cluster: A JobScheduler backup cluster ensures fail-safe operation with automatic fail-over. A fail-safe system consists of a primary Job Scheduler and at least one backup, with both these Job Schedulers running on different computers.
- Load balancing: For a high volume of data with time consuming processing, using multiple Job Schedulers will speed up the processing time considerably, and provide higher availability. In load balancing mode, the processing tasks are shared between multiple Job Schedulers that are handling distributed orders on more than one host.
- Implementations with third party Open Source components that are available for:
- Network Monitors such as Nagios
- Reporting tools such as JasperReports
- Secure Shell remote execution, SCP secure copy and SFTP secure file transfer.
Implementation
[Bearbeiten | Quelltext bearbeiten]JobScheduler is written in C++. Standard jobs for distribution are implemented with Java (programming language).
JobScheduler is customized according to specific business requirements. Enterprise-level support is available.
Supported platforms
[Bearbeiten | Quelltext bearbeiten]Operating systems:
- Windows 2003/2008/XP/Vista/7
- Linux starting with kernel 2.4
- Solaris 8/9/10 (SPARC, x86)
- HP-UX 11 (IA-64)
- AIX 5.3
Database management systems:
- Oracle 8.1.7, 9.2, 10g, 11g
- SQL Server 2000, 2005, 2008
- DB2 8.x
- Adaptive Server Enterprise ASE 15
- MySQL version 5.x
- PostgreSQL 8.x
- Firebird 1.5
References
[Bearbeiten | Quelltext bearbeiten]External links
[Bearbeiten | Quelltext bearbeiten]- Product web site
- Software- und Organisations-Service GmbH company web site, located in Berlin, Germany
Category:Free software programmed in C++ Category:Job scheduling