Scalable peer service for Erlang.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
include Disable tracing. Oct 6, 2018
priv Keep priv dir. May 6, 2016
src Make logging on error only when tracing. Oct 7, 2018
test Add additional logging. Oct 6, 2018
.gitignore Update scenario configuration. Feb 1, 2018
.travis.yml Only build on Erlang 20. Sep 20, 2018
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Oct 5, 2017
LICENSE Update copyright. May 2, 2016
Makefile Alter configuration for perf testing. Feb 1, 2018
README.md delete amqp manager in README Oct 3, 2018
rebar.config merge two parts of profiles Sep 27, 2018
rebar.lock switch to uuid hex package Apr 28, 2018
rebar3 upgrade rebar3 escript Jan 13, 2017
relx.config Add initial version. May 2, 2016
tools.mk Fix makefile and build. May 2, 2016

README.md

Partisan

Build Status

Partisan is a flexible, TCP-based membership system for Erlang/Elixir.

Partisan features:

  • Single node testing, facilitated by a disterl control channel for figuring out which ports the peer service is operating at.
  • Messages are sent via TCP connections that are maintained to all cluster members.
  • Failure detection is performed TCP.
  • Connections are verified at each gossip round.
  • Configurable fanout.
  • On join, gossip is performed immediately, instead of having to wait for the next gossip round.
  • HyParView implementation.

Partisan has many available peer service managers:

  • Full membership with TCP-based failure detection: partisan_default_peer_service_manager.
  • Client/server topology: partisan_client_server_peer_service_manager.
  • HyParView, hybrid partial view membership protocol, with TCP-based failure detection: partisan_hyparview_peer_service_manager.
  • Static topology: partisan_static_peer_service_manager.