# quartz-scheduler/quartz

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/quartz-scheduler-quartz).**

6,732 stars · 1,982 forks · Java · Apache-2.0

## Links

- GitHub: https://github.com/quartz-scheduler/quartz
- Homepage: http://www.quartz-scheduler.org
- awesome-repositories: https://awesome-repositories.com/repository/quartz-scheduler-quartz.md

## Description

Quartz is a Java job scheduling framework and task execution engine designed to manage and execute scheduled tasks within application environments. It functions as an enterprise job scheduler that persists job state and execution history to maintain reliability across system restarts.

The system distinguishes itself through a decoupled architecture that separates the definition of a job's action from the trigger logic that determines when it runs. It supports distributed task coordination across multiple server nodes to provide high availability and load balancing.

The framework covers a broad range of background processing capabilities, including recurring task automation based on fixed timetables or complex calendar intervals. It utilizes JDBC-based persistence for job recovery, lock-based cluster coordination, and a state-machine lifecycle to track task progress from execution to completion.

## Tags

### DevOps & Infrastructure

- [Job Scheduling](https://awesome-repositories.com/f/devops-infrastructure/job-scheduling.md) — Provides an enterprise-grade system for managing, monitoring, and executing persistent background processing jobs.
- [Recurring Job Scheduling](https://awesome-repositories.com/f/devops-infrastructure/recurring-job-scheduling.md) — Executes background tasks on fixed timetables or complex calendar intervals. ([source](https://github.com/quartz-scheduler/quartz/blob/main/docs/index.md.adoc))
- [Distributed Task Coordination](https://awesome-repositories.com/f/devops-infrastructure/distributed-lock-coordination/distributed-task-coordination.md) — Coordinates job triggering across multiple server nodes to provide high availability and load balancing.
- [Distributed Recurring Task Scheduling](https://awesome-repositories.com/f/devops-infrastructure/distributed-recurring-task-scheduling.md) — Runs specific code on a fixed schedule across distributed nodes while preventing duplicate execution.
- [Distributed Lock Coordination](https://awesome-repositories.com/f/devops-infrastructure/task-schedulers/distributed-lock-coordination.md) — Uses database locks to synchronize task execution across a cluster and prevent duplicate job instances.

### Data & Databases

- [Job State Persistence](https://awesome-repositories.com/f/data-databases/persistent-application-state/job-state-persistence.md) — Persists job definitions and execution states in relational databases to ensure recovery after system crashes.

### Development Tools & Productivity

- [Cron Scheduling](https://awesome-repositories.com/f/development-tools-productivity/cron-scheduling.md) — Provides a system for defining and calculating task execution times using standard cron expressions.
- [Lifecycle State Machines](https://awesome-repositories.com/f/development-tools-productivity/change-tracking/state-tracking-utilities/action-based-state-tracking/job-state-tracking/lifecycle-state-machines.md) — Tracks task progress through a formal state machine from waiting to executing and complete statuses.

### Software Engineering & Architecture

- [Job Scheduling Frameworks](https://awesome-repositories.com/f/software-engineering-architecture/application-frameworks/general-purpose-frameworks/java-frameworks/job-scheduling-frameworks.md) — Provides a comprehensive Java framework for managing and executing scheduled tasks with complex intervals.
- [Background Processing](https://awesome-repositories.com/f/software-engineering-architecture/background-processing.md) — Offloads long-running or delayed operations from the main application thread to improve responsiveness.
- [Background Task Schedulers](https://awesome-repositories.com/f/software-engineering-architecture/execution-control/background-task-schedulers.md) — Acts as a task execution engine that triggers recurring background work based on calendar rules.
- [Trigger-Job Decoupling](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/modular-decoupled-design/structural-design-paradigms/decoupled-logic-encapsulation/logic-decoupling/trigger-job-decoupling.md) — Implements a decoupled architecture that separates job action definitions from their execution triggers.

### Programming Languages & Runtimes

- [Thread Pools](https://awesome-repositories.com/f/programming-languages-runtimes/language-features-paradigms/concurrency-models/concurrency/task-orchestration-frameworks/thread-pools.md) — Utilizes a worker thread pool model to execute triggered jobs concurrently for maximum throughput.
