Crate plumcast

Source
Expand description

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

Modules§

message
Message and related components.
metrics
Prometheus metrics.
misc
Miscellaneous components.
node
Node and related components.
service
Service and related components.

Structs§

Error
This crate specific Error type.

Enums§

ErrorKind
Possible error kinds.

Type Aliases§

Result
This crate specific Result type.