Redsync provides a Redis-based distributed mutual exclusion lock implementation for Go as described in this post. A reference library (by antirez) for Ruby is available at github.com/antirez/redlock-rb.
Install Redsync using the go get command:
$ go get github.com/go-redsync/redsync
The only dependencies are the Go distribution and Redigo.
Contributions are welcome.
Redsync 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.