类 JRaftProtocol
java.lang.Object
com.alibaba.nacos.core.distributed.AbstractConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
com.alibaba.nacos.core.distributed.raft.JRaftProtocol
- 所有已实现的接口:
com.alibaba.nacos.consistency.CommandOperations,com.alibaba.nacos.consistency.ConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>,com.alibaba.nacos.consistency.cp.CPProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
public class JRaftProtocol
extends AbstractConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
implements com.alibaba.nacos.consistency.cp.CPProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
A concrete implementation of CP protocol: JRaft.
┌──────────────────────┐
┌──────────────────────┐ │ ▼
│ ProtocolManager │ │ ┌───────────────────────────┐
└──────────────────────┘ │ │for p in [LogProcessor4CP] │
│ │ └───────────────────────────┘
▼ │ │
┌──────────────────────────────────┐ │ ▼
│ discovery LogProcessor4CP │ │ ┌─────────────────┐
└──────────────────────────────────┘ │ │ get p.group() │
│ │ └─────────────────┘
▼ │ │
┌─────────────┐ │ │
│ RaftConfig │ │ ▼
└─────────────┘ │ ┌──────────────────────────────┐
│ │ │ create raft group service │
▼ │ └──────────────────────────────┘
┌──────────────────┐ │
│ JRaftProtocol │ │
└──────────────────┘ │
│ │
init() │
│ │
▼ │
┌─────────────────┐ │
│ JRaftServer │ │
└─────────────────┘ │
│ │
│ │
▼ │
┌────────────────────┐ │
│JRaftServer.start() │ │
└────────────────────┘ │
│ │
└──────────────────┘
- 作者:
- liaochuntao
-
字段概要
从类继承的字段 com.alibaba.nacos.core.distributed.AbstractConsistencyProtocol
metaData, processorMap -
构造器概要
构造器 -
方法概要
修饰符和类型方法说明voidaddRequestProcessors(Collection<com.alibaba.nacos.consistency.cp.RequestProcessor4CP> processors)CompletableFuture<com.alibaba.nacos.consistency.entity.Response>aGetData(com.alibaba.nacos.consistency.entity.ReadRequest request)com.alibaba.nacos.common.model.RestResult<String>com.alibaba.nacos.consistency.entity.ResponsegetData(com.alibaba.nacos.consistency.entity.ReadRequest request)voidinit(RaftConfig config)booleanvoidmemberChange(Set<String> addresses)voidshutdown()com.alibaba.nacos.consistency.entity.Responsewrite(com.alibaba.nacos.consistency.entity.WriteRequest request)CompletableFuture<com.alibaba.nacos.consistency.entity.Response>writeAsync(com.alibaba.nacos.consistency.entity.WriteRequest request)从类继承的方法 com.alibaba.nacos.core.distributed.AbstractConsistencyProtocol
allProcessor, loadLogProcessor, protocolMetaData从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait从接口继承的方法 com.alibaba.nacos.consistency.ConsistencyProtocol
protocolMetaData
-
构造器详细资料
-
JRaftProtocol
- 抛出:
Exception
-
-
方法详细资料
-
init
- 指定者:
init在接口中com.alibaba.nacos.consistency.ConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
-
addRequestProcessors
public void addRequestProcessors(Collection<com.alibaba.nacos.consistency.cp.RequestProcessor4CP> processors)- 指定者:
addRequestProcessors在接口中com.alibaba.nacos.consistency.ConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
-
getData
public com.alibaba.nacos.consistency.entity.Response getData(com.alibaba.nacos.consistency.entity.ReadRequest request) throws Exception- 指定者:
getData在接口中com.alibaba.nacos.consistency.ConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>- 抛出:
Exception
-
aGetData
public CompletableFuture<com.alibaba.nacos.consistency.entity.Response> aGetData(com.alibaba.nacos.consistency.entity.ReadRequest request)- 指定者:
aGetData在接口中com.alibaba.nacos.consistency.ConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
-
write
public com.alibaba.nacos.consistency.entity.Response write(com.alibaba.nacos.consistency.entity.WriteRequest request) throws Exception- 指定者:
write在接口中com.alibaba.nacos.consistency.ConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>- 抛出:
Exception
-
writeAsync
public CompletableFuture<com.alibaba.nacos.consistency.entity.Response> writeAsync(com.alibaba.nacos.consistency.entity.WriteRequest request)- 指定者:
writeAsync在接口中com.alibaba.nacos.consistency.ConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
-
memberChange
- 指定者:
memberChange在接口中com.alibaba.nacos.consistency.ConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
-
shutdown
public void shutdown()- 指定者:
shutdown在接口中com.alibaba.nacos.consistency.ConsistencyProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
-
execute
- 指定者:
execute在接口中com.alibaba.nacos.consistency.CommandOperations
-
isLeader
- 指定者:
isLeader在接口中com.alibaba.nacos.consistency.cp.CPProtocol<RaftConfig,com.alibaba.nacos.consistency.cp.RequestProcessor4CP>
-