Looking for a mature distributed task queuer/scheduler in go

This page summarizes the projects mentioned and recommended in the original post on /r/golang

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • machinery

    Machinery is an asynchronous task queue/job queue based on distributed message passing.

  • curlyq

    Efficient and reliable background processing for Go

  • I use mcmathja/curlyq and found it pretty reliable. This is the queue I use for Djinn CI an open source CI platform I developed.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • djinn

    Source code for the Djinn CI platform (by djinn-ci)

  • I use mcmathja/curlyq and found it pretty reliable. This is the queue I use for Djinn CI an open source CI platform I developed.

  • proposals

    Temporal proposals (by temporalio)

  • Give Temporal a look https://temporal.io/

  • temporalite-archived

    Discontinued An experimental distribution of Temporal that runs as a single process

  • If you don't need to scale horizontally, you may be able to get away with https://github.com/temporalio/temporalite and SQLite backed up via Litestream. We leverage Temporalite in our CI tests and for local development, it's an excellent lightweight version.

  • watermill

    Building event-driven applications the easy way in Go.

  • Checkout https://watermill.io/

  • NATS

    High-Performance server for NATS.io, the cloud and edge native messaging system.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • delayq

    DelayQ is a Go library that provides a performant, reliable, distributed delay-queue using Redis.

  • I built https://github.com/spy16/delayq which may or may not be helpful. Mentioning anyway. (It's uses redis, so in terms of durability whatever redise can guarantee applies.)

  • gueron

    Cron jobs scheduler and runner backed by github.com/vgarvardt/gue

  • avail

    Allows the representation of a time frame using common cron syntax and then efficiently checks whether a given time exists within that time frame. (by clintjedwards)

  • I've since just used a combination of different cron libraries and goroutinues.

  • Asynq

    Simple, reliable, and efficient distributed task queue in Go

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts