Categorygithub.com/temporalio/ringpop-go
repositorypackage
0.0.0-20250130211428-b97329e994f7
Repository: https://github.com/temporalio/ringpop-go.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# README

ringpop-go Build Status Coverage Status

(This project is no longer under active development. Temporal will eventually deprecate usage of Ringpop.)

Ringpop is a library that brings cooperation and coordination to distributed applications (see Uber announcement blogpost). 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/temporalio/ringpop-go

Developing

First make certain that thrift v0.9.3 (OSX: brew install https://gist.githubusercontent.com/chrislusf/8b4e7c19551ba220232f037b43c0eaf3/raw/01465b867b8ef9af7c7c3fa830c83666c825122d/thrift.rb) 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 (note ensure you have enough file descriptors using ulimit -n - atleast 8192 reccomended.):

make test

Documentation

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