Golang library for resource reservation using Redis
import {
"github.com/Clever/go-redis-reservation/reservation"
}
manager, err := reservation.NewManager("my-redis-host.com:6379", "myWorkerName")
if err != nil {
// Error connecting to redis
}
reservation, err := manager.Lock(jobName)
if err != nil {
// Reservation is already held for jobName
}
myWorker.DoWork()
err = reservation.Release()
The tests depend on a local redis instance. Run
redis-server &
make test