Distributed job scheduling with Go?

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

Our great sponsors
  • InfluxDB - Access the most powerful time series database as a service
  • SonarLint - Clean code begins in your IDE with SonarLint
  • SaaSHub - Software Alternatives and Reviews
  • proposals

    Temporal proposals (by temporalio)

    I would take a look at temporal.io. The website is kind of dogshit, I'd honestly use the wayback machine to read it from a few months ago because it used to have actual information on it. It's an uber-developed, cloud-native (i.e. kube) workflow engine with first class go support that has gotten some buzz and is pretty good. It's a clear replacement for hangfire, and I have verified that it does have cron support.

  • redis-cron

    A cron library for go, support redis to execute only one same job in multi instances.

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

  • dcron

    A distributed cron framework. (by gochore)

  • Dkron

    Dkron - Distributed, fault tolerant job scheduling system https://dkron.io

    I'am also familiar to hangfire, used in the past as distributed job scheduler for Owin microservices in C# too. Btw when we moved towards Golang stack realized that hangfire wasnt really necessary. It was enough standard and idiomatic Go code, learning using Go Routine adding any Cron library and maybe a Redis dependency if persistence is needed. But if you really prefer something hangfire-like, give a try to https://dkron.io/ and its GitHub repo https://github.com/distribworks/dkron , it's pretty similar. They have an open source version but also a pro license, in the same way as hangfire does.

  • gocron

    A Golang Job Scheduling Package.

  • Quartz

    Code for Quartz Scheduler

    If you end up needing to build one. Check out this long running and well respective java project for ideas: https://github.com/quartz-scheduler/quartz

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