Package: wnpp Severity: wishlist Owner: Henti Smith <he...@geekware.co.za> X-Debbugs-CC: debian-de...@lists.debian.org, pkg-go-maintain...@lists.alioth.debian.org
* Package name : dsync Version : 0.0~git20170209.0.b9f7da7-1 Upstream Author : Minio Cloud Storage * URL : https://github.com/minio/dsync * License : Apache-2.0 Programming Lang: Go Description : A distributed sync package. dsync Slack (https://slack.minio.io) Go Report Card A distributed locking and syncing package for Go. Introduction dsync is a package for doing distributed locks over a network of n nodes. It is designed with simplicity in mind and hence offers limited scalability (n <= 16). Each node will be connected to all other nodes and lock requests from any node will be broadcast to all connected nodes. A node will succeed in getting the lock if n/2 + 1 nodes (whether or not including itself) respond positively. If the lock is acquired it can be held for as long as the client desires and needs to be released afterwards. This will cause the release to be broadcast to all nodes after which the lock becomes available again. Motivation This package was developed for the distributed server version of Minio Object Storage (https://minio.io/). For this we needed a distributed locking mechanism for up to 16 servers that each would be running minio server. The locking mechanism itself should be a reader/writer mutual exclusion lock meaning that it can be held by a single writer or an arbitrary number of readers. -- --