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
ouqiang avatar

ouqiang/delay-queue

0
View on GitHub↗
1,194 stars·237 forks·Go·MIT·12 views

Delay Queue

Delay Queue is a distributed delayed task queue backed by Redis that schedules, polls, and manages time-sensitive jobs for asynchronous processing. It functions as an asynchronous job scheduler that accepts jobs with delay durations for execution at future timestamps, alongside operating as a distributed message broker where clients can poll queues for due tasks and acknowledge completion.

The service incorporates lease-based job acknowledgment to assign temporary processing locks and explicit completion tokens, preventing duplicate executions and managing unacknowledged retries. Delivery is handled through a long-polling channel that maintains open client connections until tasks mature, immediately pushing payloads to downstream workers. A sorted-set-based timer structure enables efficient range queries for due jobs, while a RESTful control plane exposes standard web endpoints for inspecting, querying, updating, and deleting task metadata across the queue lifecycle.

Features

  • Delayed Task Scheduling - Schedules background jobs with custom delay durations to be executed at precise future timestamps.
  • Sorted Sets - Stores scheduled tasks in a sorted set data structure to enable efficient range queries for instantly retrieving due jobs.
  • Worker and Task Status Listing - Enables clients to poll queues and block requests until tasks become due for downstream worker consumption.
  • Job Queues - Provides distributed job queue consumption where clients poll for due tasks and process payloads.
  • Acknowledgments - Assigns temporary processing locks and explicit completion tokens to acknowledge jobs and prevent duplicate executions.
  • Message Brokers - Acts as a distributed message broker where clients can poll queues for due tasks and acknowledge completion.
  • Redis-Backed Queues - Implements a distributed delayed task queue backed by Redis that schedules, polls, and manages time-sensitive jobs.
  • RESTful HTTP Interfaces - Exposes a RESTful HTTP control plane for inspecting, updating, and deleting task metadata across the queue.
  • Background Task Lifecycle Trackers - Manages background task lifecycles through querying, updating, deleting, and job acknowledgment.
  • Asynchronous Task Schedulers - Operates as an asynchronous job scheduler that accepts jobs with delay durations for execution at future timestamps.
  • Long-Polling Event Pushing - Maintains open client long-polling connections until tasks mature to immediately push payloads to downstream workers.
  • Job Lifecycle Management - Provides comprehensive management capabilities for querying, updating, and deleting queued tasks through dedicated endpoints.

Star history

Star history chart for ouqiang/delay-queueStar history chart for ouqiang/delay-queue

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

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 ouqiang/delay-queue do?

Delay Queue is a distributed delayed task queue backed by Redis that schedules, polls, and manages time-sensitive jobs for asynchronous processing. It functions as an asynchronous job scheduler that accepts jobs with delay durations for execution at future timestamps, alongside operating as a distributed message broker where clients can poll queues for due tasks and acknowledge completion.

What are the main features of ouqiang/delay-queue?

The main features of ouqiang/delay-queue are: Delayed Task Scheduling, Sorted Sets, Worker and Task Status Listing, Job Queues, Acknowledgments, Message Brokers, Redis-Backed Queues, RESTful HTTP Interfaces.

What are some open-source alternatives to ouqiang/delay-queue?

Open-source alternatives to ouqiang/delay-queue include: bee-queue/bee-queue — Bee-queue is a Node.js background processing system that uses Redis for job queueing and persistence. It is designed… tporadowski/redis — Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL… antirez/disque — Disque is a distributed message broker that manages asynchronous communication between services through in-memory job… automattic/kue — Kue is a Redis-backed job queue library for Node.js that provides a complete system for defining, scheduling, and… coleifer/huey — .. image:: https://media.charlesleifer.com/blog/photos/huey3-logo.png. bogdanp/dramatiq — Dramatiq is a distributed task queue and workload manager used to offload function execution to background workers. It…

Curated searches featuring Delay Queue

Hand-picked collections where Delay Queue appears.
  • Background process manager

Open-source alternatives to Delay Queue

Similar open-source projects, ranked by how many features they share with Delay Queue.
  • bee-queue/bee-queuebee-queue avatar

    bee-queue/bee-queue

    4,032View on GitHub↗

    Bee-queue is a Node.js background processing system that uses Redis for job queueing and persistence. It is designed to offload heavy tasks from the main execution thread to background workers to maintain application responsiveness. The project provides distributed job processing, allowing worker nodes to run across multiple processes to handle large volumes of tasks concurrently. It ensures reliable task execution through automatic retries and the recovery of stalled processes. Its capability surface covers asynchronous task scheduling for delayed jobs, concurrency control for worker nodes,

    JavaScriptbee-queuejob-queuejob-scheduler
    View on GitHub↗4,032
  • tporadowski/redistporadowski avatar

    tporadowski/redis

    9,987View on GitHub↗

    Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL database. It provides sub-millisecond read and write access to data stored in RAM and can operate as a vector database for indexing high-dimensional embeddings. The system supports a wide range of data storage and synchronization primitives, including the management of strings, hashes, lists, sets, and JSON documents. It enables real-time data operations through atomic transactions, hybrid persistence using snapshots and append-only logs, and high-availability configurations

    Credisredis-for-windowsredis-msi-installer
    View on GitHub↗9,987
  • antirez/disqueantirez avatar

    antirez/disque

    8,070View on GitHub↗

    Disque is a distributed message broker that manages asynchronous communication between services through in-memory job queues. It operates as a cluster-aware job scheduler, providing at-least-once delivery guarantees with acknowledgment and retry mechanisms, and supports blocking queue consumers that efficiently wait for jobs to become available. The broker implements a job state machine that tracks each job through its lifecycle from queued to acknowledged, with configurable retry limits and time-to-live expiration to prevent unbounded queue growth. Jobs can be enqueued with delivery guarante

    C
    View on GitHub↗8,070
  • automattic/kueAutomattic avatar

    Automattic/kue

    9,437View on GitHub↗

    Kue is a Redis-backed job queue library for Node.js that provides a complete system for defining, scheduling, and processing background work. It stores job metadata and state in Redis lists and sorted sets, enabling persistent, in-memory operations with configurable concurrency control and priority-sorted processing. The library includes a RESTful HTTP API for managing jobs and a web-based monitoring dashboard for inspecting job status, progress, and logs. The system distinguishes itself through its event-driven worker model, where workers listen for job events via Redis pub/sub and process j

    JavaScriptjob-queuepriority-queueworker-queue
    View on GitHub↗9,437
  • See all 30 alternatives to Delay Queue→