This package is being replaced with https://gopkg.in/redsync.v1. I will continue to maintain this package for a while so that its users do not feel abandoned. But I request everyone to gradually switch to the other package which will be maintained more actively.
Redsync.go provides a Redis-based distributed mutual exclusion lock implementation for Go as described in this blog post. A reference library (by antirez) for Ruby is available at github.com/antirez/redlock-rb.
Install Redsync.go using the go get command:
$ go get github.com/hjr265/redsync.go/redsync
The only dependencies are the Go distribution and
Contributions are welcome.
Redsync.go is available under the BSD (3-Clause) License.
This code implements an algorithm which is currently a proposal, it was not formally analyzed. Make sure to understand how it works before using it in production environments.