god is a scalable, performant, persistent, in-memory data structure system. It allows massively distributed applications to update and fetch common data in a structured and sorted format.
Its main inspirations are Redis and Chord/DHash. Like Redis it focuses on performance, ease of use, and a small, simple yet powerful feature set, while from the Chord/DHash projects it inherits scalability, redundancy, and transparent failover behaviour.
Try it out
Embed it in your Go application
import "github.com/zond/god/dhash" s := dhash.NewNodeDir(fmt.Sprintf("%v:%v", listenIp, listenPort), fmt.Sprintf("%v:%v", broadcastIp, broadcastPort), dataDir) s.MustStart() s.MustJoin(fmt.Sprintf("%v:%v", joinIp, joinPort))
HTML documentation: http://zond.github.com/god/
godoc documentation: http://godoc.org/github.com/zond/god
- Add illustrations to the usage manual
- Consecutively start 1-20 instances on equally powerful machines and benchmark against each size
- Need 20 machines of equal and constant performance. Is anyone willing to lend me this for few days of benchmarking?
- Add benchmark results to docs