Namespace DotNext.Net.Cluster.Consensus.Raft
Classes
ClusterMemberConfiguration
Represents configuration of cluster member.
ConsensusOnlyState
Represents lightweight Raft node state that is suitable for distributed consensus only.
LeaderOperationException
Indicates that the operation requires a leader in the cluster.
NotLeaderException
Indicates that the operation cannot be performed on a node which is not a leader.
PersistentStateExtensions
Provides various extension methods for IPersistentState interface.
QuorumUnreachableException
Indicates that the operation cannot be performed on a node is unable to recognize the leader in the cluster.
RaftCluster
Represents default implementation of Raft-based cluster.
RaftCluster.BuiltInTransportConfiguration
Provides configuration of cluster node whose communication is based on network transport implemented by .NEXT library.
RaftCluster.CustomTransportConfiguration
Provides configuration of cluster node whose communication is based on custom network transport.
RaftCluster.NodeConfiguration
Represents transport-agnostic configuration of cluster member.
RaftCluster.TcpConfiguration
Represents configuration of the local cluster node that relies on TCP transport.
RaftClusterConfiguration
Allows setting up the special service used for configuration of IRaftCluster instance.
RaftClusterExtensions
Represents extension methods for IRaftCluster interface.
RaftClusterMember
Represents Raft cluster member that is accessible through the network.
RaftClusterMemberEventArgs<TMember>
Represents arguments for all events related to Raft cluster members.
RaftCluster<TMember>
Represents transport-independent implementation of Raft protocol.
RaftCluster<TMember>.ConcurrentMembershipModificationException
Indicates that the caller is trying to add or remove cluster member concurrently.
RaftProtocolException
Represents violation of Raft protocol.
Structs
BinaryLogEntry
Represents default implementation of IRaftLogEntry.
BinaryLogEntry<T>
Represents a log entry with binary payload.
ElectionTimeout
Represents leader election timeout.
EmptyLogEntry
Represents No-OP entry.
IRaftClusterMember.ReplicationState
Represents replication state of the member used internally by Raft implementation.
JsonLogEntry<T>
Represents JSON-serializable log entry.
Result<T>
Represents RPC response.
Interfaces
IClusterMemberConfiguration
Represents configuration of cluster member.
IClusterMemberLifetime
Provides additional control over IRaftCluster lifecycle.
IInputLogEntry
Represents a custom log entry that can be passed to the log.
IPersistentState
Represents persistent state of local cluster member required by Raft consensus protocol.
IRaftCluster
Represents cluster of nodes coordinated using Raft consensus protocol.
IRaftClusterMember
Represents cluster member accessible through Raft protocol.
IRaftLogEntry
Represents log entry in Raft audit trail.
Enums
HeartbeatResult
A result of heartbeat processing returned by the Follower member.
PreVoteResult
Represents a result of pre-voting phase.