RussellLuo / micron

A minimal implementation of the fault-tolerant job scheduler.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.

License:MIT License


Languages

Language:Go 100.0%