Skip to content

Latest commit

 

History

History
93 lines (65 loc) · 4.12 KB

README.md

File metadata and controls

93 lines (65 loc) · 4.12 KB

Amber Job

License Spring Cloud Quartz

Amber Job is a cutting-edge distributed task scheduling framework designed to simplify and enhance job scheduling in modern microservices architectures. Built on top of Spring Cloud and Quartz, Amber Job enables dynamic and distributed task execution with built-in support for load balancing, failure handling, and extensive monitoring capabilities. With its flexible design and intuitive UI, it is an ideal solution for developers and enterprises aiming to manage complex scheduling ...


Key Features

1. Dynamic Task Management with Intuitive UI

Amber Job provides a user-friendly web interface for managing tasks dynamically. Key capabilities include:

  • Create, Modify, and Delete Tasks: Define task properties and schedules effortlessly.
  • Trigger Management: Update task triggers in real-time without restarting services.
  • Detailed Logs: View task execution details, including runtime logs and error traces, for precise debugging and monitoring.

2. Distributed Task Execution and Load Balancing

Amber Job leverages Spring Cloud and Quartz to achieve seamless distributed task execution. Features include:

  • Microservices Integration: Execute tasks across multiple microservices in a coordinated manner.
  • Load Balancing: Supports advanced load balancing algorithms, ensuring efficient resource utilization.
  • High Availability: Automatically redistributes tasks in case of node failure, ensuring fault tolerance and reliability.

3. Robust Failure Handling and Retry Mechanisms

Amber Job incorporates sophisticated failure handling strategies to ensure task reliability:

  • Automatic Retries: Retries failed tasks based on customizable retry policies.
  • Error Logging: Maintains comprehensive error logs for detailed analysis.
  • Failure Notifications: Alerts developers about task failures to facilitate proactive resolution.

4. Future-Ready Architecture

Amber Job is designed to adapt to evolving requirements with planned support for:

  • DAG (Directed Acyclic Graph): Define complex workflows with dependencies between tasks.
  • Batch Task Processing: Execute bulk tasks with optimized performance and resource allocation.
  • Pluggable Algorithms: Extend load balancing and retry mechanisms with custom algorithms.

5. Seamless Scalability and Extensibility

Amber Job’s architecture ensures seamless scalability and extensibility:

  • Horizontal Scaling: Add nodes to the cluster dynamically to handle increasing workloads.
  • Customizable Modules: Extend functionality with plugins for specialized use cases.
  • Cloud-Native Support: Integrates effortlessly with cloud-based platforms and orchestration tools like Kubernetes.

Getting Started

Prerequisites

  • Java 17+
  • Spring Cloud Environment
  • Database Support (MySQL, PostgreSQL, or others for Quartz persistence)

Installation

  1. Clone the repository:

    git clone https://github.com/paganini2008/amber-job.git
    cd amber-job
  2. Build and run the application:

    mvn clean install
    java -jar target/amber-job.jar
  3. Access the web UI at http://localhost:8080 to start managing tasks.


Documentation

For detailed guides and API references, visit the Official Documentation.


Contributing

Contributions are welcome! Refer to the Contributing Guide for instructions.


License

Amber Job is licensed under the MIT License. See the LICENSE file for more details.


Amber Job empowers developers to manage distributed tasks with precision, flexibility, and ease. Whether you are orchestrating simple schedules or complex workflows, Amber Job provides the tools and features to streamline your operations and maximize productivity.