Obsidian

From Obsidian Scheduler
Revision as of 17:10, 19 October 2013 by Carfey (talk | contribs)
Jump to navigationJump to search

Obsidian is Carfey Software's Java-based scheduling tool.

It takes the power and expressiveness of Cron and combines it with enterprise-class features like load-balancing, failover and conflict prioritization.

See the User Guide for details of each feature.

Overview

Obsidian replaces tools like Cron and other popular task schedulers by taking the basic features in a scheduler and adding full management capabilities, workflow, conflict resolution, native load-balancing and failover. Multiple nodes cooperate in job scheduling and execution by using a common database.

It is a Java-based application, and can be run standalone or embedded within a Java process.

Jobs can be configured and managed from within the administration console, and allow cron-style job patterns, schedule windows and advanced parameterization.

Basic Features

  • Cron-style patterns are used for job scheduling.
  • A full job management REST API is included.
  • Embedded Java API.
  • Seamless Spring integration.
  • Fully-featured administration and monitoring web application.
  • Notifications and logging of scheduler events and failures.
  • Job configuration can be changed at any time - no restarts or rebuilds.
  • One simple Java interface to implement to make a job compatible with Obsidian.
  • Schedule windows allow you to have future schedule changes (disable a job or change its runtime schedule).
  • Job parameterization allows for multiple instances of jobs with different configurations.
  • Jobs that need to be terminated can be interrupted easily.
  • Failed jobs can be resubmitted.
  • Submit one-time runs for jobs.

Enterprise Features

  • Obsidian instances automatically cooperate to perform load-balancing and provide failover.
  • Even with a single node licence, a second node may be running in standby to automatically pick up if its peer dies.
  • Job conflicts can be configured to provide automatic job prioritization and conflict resolution.
  • Jobs may be chained to others based on various conditions to provide job workflow support.
  • Floating node licences allow flexibility and choice to users.