9 releases
0.1.5 | Feb 20, 2019 |
---|---|
0.1.4 | Feb 19, 2019 |
0.1.3 | Jan 30, 2019 |
0.1.0 | Jul 28, 2018 |
0.0.3 | Jul 21, 2018 |
31 downloads per month
130KB
3K
SLoC
plumcast
A message broadcasting library based on the Plumtree/HyParView algorithms.
Properties
Pros
- Nearly optimal message transmitting count
- Usually messages are broadcasted via a spanning tree
- Only the nodes interested in the same messages belong to the same cluster
- Scalable
- Theoretically, it can handle ten-thousand of nodes or more
- High fault tolerance
- Spanning trees are automatically repaired if there are crashed nodes
- Dynamic membership
- Nodes can be added to (removed from) a cluster at any time
Cons
- No strong guarantee about connectivity of the nodes in a cluster
- No strong guarantee about delivery count of a message
- No guarantee about messages delivery order
If some of the above guarantees are mandatory for your application, it is need to be provided by upper layers.
References
Dependencies
~4.5MB
~88K SLoC