Skip to content

A minimal implementation of the fault-tolerant job scheduler.

License

Notifications You must be signed in to change notification settings

RussellLuo/micron

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

micron

A minimal implementation of the fault-tolerant job scheduler.

Features

  1. Fault-tolerant

    No single point of failure, just setup multiple Cron instances on different machines.

  2. Exactly-once

    The same job, although scheduled simultaneously by multiple Cron instances, is guaranteed to be executed exactly once per execution time of its schedule.

    This guarantee is provided by leveraging distributed locks. The example implementation is based on Redis with a single instance. For higher safety and reliability, you can use other Raft-based implementations of distributed locks (e.g. Consul, etcd).

  3. Embeddable

    No need to run standalone binaries, you can just embed Cron instances into your existing application, which may consist of one or multiple nodes.

Installation

$ go get -u github.com/RussellLuo/micron

Example

See example.

Documentation

Checkout the Godoc.

License

MIT

About

A minimal implementation of the fault-tolerant job scheduler.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages