Plumtree based Process Group
$ git clone git@github.com:sile/ppg.git
$ cd ppg/
$ ./rebar3 compile
$ make start
> ppg:create(foo).
> ppg:which_groups().
[foo].
> {ok, Channel} = ppg:join(foo, self()).
> lists:foreach(fun (_) -> ppg:join(foo, self()) end, lists:seq(1, 4)).
> ppg:broadcast(Channel, bar).
> flush().
Shell got bar
Shell got bar
Shell got bar
Shell got bar
Shell got bar
ok
See EDoc Documents
- Plumtree: Epidemic Broadcast Trees
- HyParView: a membership protocol for reliable gossip-based broadcast
This library is released under the MIT License.
See the LICENSE file for full license information.