public class MulticastDiscoveryProvider extends io.atomix.utils.event.AbstractListenerManager<NodeDiscoveryEvent,NodeDiscoveryEventListener> implements NodeDiscoveryProvider
This implementation uses the BroadcastService internally and thus requires
that multicast is enabled on the Atomix instance. Membership
is determined by each node broadcasting to a multicast group, and phi accrual failure detectors are used to detect
nodes joining and leaving the cluster.
| Modifier and Type | Class and Description |
|---|---|
static class |
MulticastDiscoveryProvider.Type
Broadcast member location provider type.
|
| Modifier and Type | Field and Description |
|---|---|
static MulticastDiscoveryProvider.Type |
TYPE |
| Constructor and Description |
|---|
MulticastDiscoveryProvider() |
MulticastDiscoveryProvider(MulticastDiscoveryConfig config) |
| Modifier and Type | Method and Description |
|---|---|
static MulticastDiscoveryBuilder |
builder()
Returns a new multicast member location provider builder.
|
MulticastDiscoveryConfig |
config() |
Set<Node> |
getNodes()
Returns the set of active nodes.
|
CompletableFuture<Void> |
join(BootstrapService bootstrap,
Node localNode)
Joins the cluster.
|
CompletableFuture<Void> |
leave(Node localNode)
Leaves the cluster.
|
addListener, removeListenerpublic static final MulticastDiscoveryProvider.Type TYPE
public MulticastDiscoveryProvider()
public MulticastDiscoveryProvider(MulticastDiscoveryConfig config)
public static MulticastDiscoveryBuilder builder()
public MulticastDiscoveryConfig config()
config in interface io.atomix.utils.config.Configured<NodeDiscoveryConfig>public Set<Node> getNodes()
NodeDiscoveryProvidergetNodes in interface NodeDiscoveryProviderpublic CompletableFuture<Void> join(BootstrapService bootstrap, Node localNode)
NodeDiscoveryProviderjoin in interface NodeDiscoveryProviderbootstrap - the bootstrap servicelocalNode - the local node infopublic CompletableFuture<Void> leave(Node localNode)
NodeDiscoveryProviderleave in interface NodeDiscoveryProviderlocalNode - the local node infoCopyright © 2013–2018. All rights reserved.