This is a service that persists NATS messages to disk and retries sending them at a deferred time.
go get github.com/nickpoorman/nats-requeue
This will retrieve the library and install the retry-queue command line utility
into your $GOBIN path.
Badger
recommends
running with GOMAXPROCS=128.
I would recommend setting your soft ulimit to 65535. Google how to do it on your
OS.
TODO
TODO
All queue meta information is kept in memory and synced to disk.
Checkpointing
In memory meta for a queue consists of a Checkpoint. The checkpoint is used for seeking to the a key in Badger. This allows us to iterate directly between the events we are looking for in a time range.
This project uses Flatbuffers to
serialize messages. To build the protocol/*.fbs files you must have flatc
installed and then run the following.
make protocol
- NATS for an awesome distributed messaging system.
- This project uses dgraph-io/badger for storing the messages on disk.