awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
laravel avatar

laravel/horizon

0
View on GitHub↗
4,168 stars·723 forks·PHP·mit·4 viewslaravel.com/docs/horizon↗

Horizon

Horizon is a background job orchestrator and worker manager for Redis queues. It provides a monitoring dashboard to track job throughput, wait times, and failure rates, alongside a system for managing job retries, execution timeouts, and worker distribution.

The project distinguishes itself through a Redis-backed monitoring interface that identifies system bottlenecks and a queue alerting system that sends notifications when background job wait times exceed defined thresholds. Worker processes are managed via version-controlled configuration files to ensure consistent balancing and scaling across different environments.

The system covers broad capability areas including performance metrics tracking, workload distribution balancing, and job lifecycle management. It includes administrative utilities for purging failed jobs and a development workflow that automatically restarts workers upon code changes.

Access to the monitoring dashboard is restricted via authorization gates to control visibility in non-local environments.

Features

  • Background Job Dispatchers - Acts as a central orchestrator for managing job retries, timeouts, and worker distribution.
  • Background Job Processing - Provides a comprehensive system for offloading and managing asynchronous background tasks.
  • Work Queue Performance Metrics - Provides detailed metrics on job execution time and volume to identify processing bottlenecks.
  • Queue Workload Balancing - Allocates worker processes across queues using workload-based scaling, even distribution, or priority ordering.
  • Worker Process Management - Provides a configuration system for defining worker counts and supervisor groups to control background job processing.
  • Queue Worker Management - Manages the orchestration and scaling of long-lived worker processes consuming tasks from Redis queues.
  • Redis-Backed Queues - Utilizes Redis as the primary storage and broker for managing job states and metadata.
  • Queue Monitoring Dashboards - Provides a visual interface to identify system bottlenecks by tracking job throughput and failure rates.
  • Retry Strategies - Implements configurable retry logic with maximum attempt counts and exponential backoff strategies.
  • Alert Thresholds - Sends notifications via external messaging services when queue wait times exceed predefined numerical thresholds.
  • Metric Dashboards - Ships a visual dashboard that tracks throughput, runtime, and failure rates to identify system bottlenecks.
  • Metric and Performance Monitors - Provides high-frequency collection and visualization of job throughput and wait time metrics.
  • Job Tagging - Implements a system for assigning searchable metadata tags to jobs for improved tracking and grouping.
  • Development Iteration Workflows - Speeds up the development cycle by automatically restarting workers upon code changes.
  • Execution Timeout Management - Allows specifying the maximum duration a worker can process a job before the process is terminated.
  • Task Worker Configurations - Uses version-controlled PHP files to define worker execution parameters, timeouts, and retry logic.
  • Worker Scaling - Provides configuration-driven scaling of background worker processes to manage processing capacity.
  • Dashboard Access Controls - Restricts visibility of the monitoring dashboard in non-local environments using configurable authorization policies.
  • Wait-Time Alerting - Sends notifications when background job backlogs exceed defined time thresholds to maintain responsiveness.
  • Queue Metric Polling - Periodically queries queue lengths and job runtimes to generate performance statistics.
  • Queue Performance Tuning - Balances worker distribution and configures execution timeouts to optimize background workload processing.
  • Worker Live Reloading - Provides a utility to automatically reload worker processes when source code changes are detected.
  • Monitoring - Monitors queued jobs.

Star history

Star history chart for laravel/horizonStar history chart for laravel/horizon

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does laravel/horizon do?

Horizon is a background job orchestrator and worker manager for Redis queues. It provides a monitoring dashboard to track job throughput, wait times, and failure rates, alongside a system for managing job retries, execution timeouts, and worker distribution.

What are the main features of laravel/horizon?

The main features of laravel/horizon are: Background Job Dispatchers, Background Job Processing, Work Queue Performance Metrics, Queue Workload Balancing, Worker Process Management, Queue Worker Management, Redis-Backed Queues, Queue Monitoring Dashboards.

What are some open-source alternatives to laravel/horizon?

Open-source alternatives to laravel/horizon include: rq/rq — rq is a distributed task queue and background worker system for Python that uses a Redis backend to decouple task… taskforcesh/bullmq — BullMQ is a Redis-backed message queue library and background processor designed for distributed task queueing. It… contribsys/faktory — Faktory is an open-source work server that queues, dispatches, and manages background jobs across multiple programming… uptrace/uptrace — Uptrace is an OpenTelemetry-based observability platform designed to collect, store, and analyze distributed traces,… helicone/helicone — Helicone is an AI gateway and observability platform designed to intercept, manage, and monitor interactions with… hatchet-dev/hatchet — Hatchet is an open-source durable workflow engine and task orchestration platform. It provides a framework for…

Open-source alternatives to Horizon

Similar open-source projects, ranked by how many features they share with Horizon.
  • rq/rqrq avatar

    rq/rq

    10,653View on GitHub↗

    rq is a distributed task queue and background worker system for Python that uses a Redis backend to decouple task submission from execution. It functions as a reliable message queue and task scheduler, allowing Python functions or asyncio coroutines to be processed asynchronously across multiple worker processes. The project distinguishes itself through reliable queuing mechanisms that prevent job loss during worker crashes using atomic operations. It provides specialized orchestration capabilities, including the prevention of duplicate jobs, job execution prioritization, and the ability to m

    Pythonasyncbackground-jobsdelayed-jobs
    View on GitHub↗10,653
  • taskforcesh/bullmqtaskforcesh avatar

    taskforcesh/bullmq

    8,432View on GitHub↗

    BullMQ is a Redis-backed message queue library and background processor designed for distributed task queueing. It functions as a distributed queue manager and task scheduler, utilizing Redis to manage asynchronous job processing and persistence. The system distinguishes itself through its role as a job workflow orchestrator, enabling the definition of complex parent-child job dependencies and hierarchies for multi-step workflows. It provides sandboxed process execution to isolate heavy workloads and prevent event loop blocking, alongside distributed rate limiting to protect downstream servic

    TypeScriptbackground-jobselixirnodejs
    View on GitHub↗8,432
  • contribsys/faktorycontribsys avatar

    contribsys/faktory

    6,089View on GitHub↗

    Faktory is an open-source work server that queues, dispatches, and manages background jobs across multiple programming languages. It stores job payloads as JSON hashes in a Redis-backed queue and provides language-specific client and worker libraries that enable any language to push jobs to the server or fetch and execute them. The server includes a batch workflow orchestrator that groups jobs into batches with completion tracking for coordinating multi-step asynchronous workflows. It features a configurable job uniqueness filter that prevents duplicate enqueues within a time window, an expon

    Go
    View on GitHub↗6,089
  • uptrace/uptraceuptrace avatar

    uptrace/uptrace

    4,098View on GitHub↗

    Uptrace is an OpenTelemetry-based observability platform designed to collect, store, and analyze distributed traces, metrics, and logs. It functions as a centralized logging backend, a distributed tracing system, and a metrics engine to monitor application performance and system health. The platform is distinguished by AI-powered operational capabilities, allowing users to query telemetry data and manage monitoring dashboards using natural language. It specifically includes specialized monitoring for generative AI pipelines, tracking token usage and response quality for LLM interactions and r

    Goapmapplication-monitoringclickhouse
    View on GitHub↗4,098
See all 30 alternatives to Horizon→