Clustering
Constants
Log = ::Log.for(self)
Constructors
Class methods
election_key
Sourcemeta_namespace
Sourcereadiness_key
Sourceservice_namespace
SourceInstance methods
cluster_consistent?
When there's an event under the readiness namespace, node creates a hash from node to version. If all the nodes are at the same version, the cluster is consistent.
consume_stabilization_events
Consume stabilization events until fiber channel empty
Ensures that the node will have only the latest version
handle_readiness_event
The leader calls the on_stable callback if...
- cluster's version state is consistent
- consistent state has not already been confirmed to be consistent
name(*args, **options)
Sourcename(*args, **options, &)
Sourcenode_versions
Sourcenodes(*args, **options)
Sourcenodes(*args, **options, &)
Sourceretry_on_missing_lease
Retry a query if a lease is missing for at most the maximum requested lease TTL
service(*args, **options)
Sourceservice(*args, **options, &)
Sourcestart
Starts the node's clustering processes.
- discovery (via hound-dog)
- election_watcher (election event consumer)
- readiness_watcher (cluster node version event consumer)
- version_watcher (version change event consumer)
- consume_stabilization_events (created by version_watcher)
Like above. Accepts a block that will be called with cluster nodes during stabilization events
If stabilize callback is true, the node is marked as ready.
uri(*args, **options)
Sourceuri(*args, **options, &)
Source