uber / ringpop-go

Scalable, fault-tolerant application-layer sharding for Go applications

Home Page:http://www.uber.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ringpop-go Build Status Coverage Status

(This project is no longer under active development.)

Ringpop is a library that brings cooperation and coordination to distributed applications. It maintains a consistent hash ring on top of a membership protocol and provides request forwarding as a routing convenience. It can be used to shard your application in a way that's scalable and fault tolerant.

Getting started

To install ringpop-go:

go get github.com/uber/ringpop-go

Developing

First make certain that thrift (OSX: brew install thrift) and glide are in your path (above). Then,

make setup

to install remaining golang dependencies and install the pre-commit hook.

Finally, run the tests by doing:

make test

Documentation

Interested in where to go from here? Read the docs at ringpop.readthedocs.org

About

Scalable, fault-tolerant application-layer sharding for Go applications

http://www.uber.com

License:MIT License


Languages

Language:Go 96.9%Language:Shell 2.4%Language:Makefile 0.3%Language:Perl 0.2%Language:Thrift 0.1%