public class DLedgerRpcNettyService extends DLedgerRpcService
| Constructor and Description |
|---|
DLedgerRpcNettyService(AbstractDLedgerServer dLedger) |
DLedgerRpcNettyService(AbstractDLedgerServer dLedger,
org.apache.rocketmq.remoting.netty.NettyServerConfig nettyServerConfig,
org.apache.rocketmq.remoting.netty.NettyClientConfig nettyClientConfig) |
DLedgerRpcNettyService(AbstractDLedgerServer dLedger,
org.apache.rocketmq.remoting.netty.NettyServerConfig nettyServerConfig,
org.apache.rocketmq.remoting.netty.NettyClientConfig nettyClientConfig,
org.apache.rocketmq.remoting.ChannelEventListener channelEventListener) |
public DLedgerRpcNettyService(AbstractDLedgerServer dLedger)
public DLedgerRpcNettyService(AbstractDLedgerServer dLedger, org.apache.rocketmq.remoting.netty.NettyServerConfig nettyServerConfig, org.apache.rocketmq.remoting.netty.NettyClientConfig nettyClientConfig)
public DLedgerRpcNettyService(AbstractDLedgerServer dLedger, org.apache.rocketmq.remoting.netty.NettyServerConfig nettyServerConfig, org.apache.rocketmq.remoting.netty.NettyClientConfig nettyClientConfig, org.apache.rocketmq.remoting.ChannelEventListener channelEventListener)
public CompletableFuture<HeartBeatResponse> heartBeat(HeartBeatRequest request)
public CompletableFuture<VoteResponse> vote(VoteRequest request)
public CompletableFuture<GetEntriesResponse> get(GetEntriesRequest request) throws Exception
Exceptionpublic CompletableFuture<AppendEntryResponse> append(AppendEntryRequest request) throws Exception
Exceptionpublic CompletableFuture<MetadataResponse> metadata(MetadataRequest request) throws Exception
Exceptionpublic CompletableFuture<PullEntriesResponse> pull(PullEntriesRequest request) throws Exception
Exceptionpublic CompletableFuture<PushEntryResponse> push(PushEntryRequest request) throws Exception
Exceptionpublic CompletableFuture<LeadershipTransferResponse> leadershipTransfer(LeadershipTransferRequest request) throws Exception
Exceptionpublic org.apache.rocketmq.remoting.protocol.RemotingCommand processRequest(io.netty.channel.ChannelHandlerContext ctx,
org.apache.rocketmq.remoting.protocol.RemotingCommand request)
throws Exception
1. separate the caller from actual executor, which make it able to handle the future results by the caller's wish 2. simplify the later execution method
CompletableFuture is an excellent choice, whenCompleteAsync will handle the response asynchronously. With an independent thread-pool, it will improve performance and reduce blocking points.
ctx - request - Exceptionpublic CompletableFuture<LeadershipTransferResponse> handleLeadershipTransfer(LeadershipTransferRequest leadershipTransferRequest) throws Exception
Exceptionpublic CompletableFuture<HeartBeatResponse> handleHeartBeat(HeartBeatRequest request) throws Exception
Exceptionpublic CompletableFuture<VoteResponse> handleVote(VoteRequest request) throws Exception
Exceptionpublic CompletableFuture<AppendEntryResponse> handleAppend(AppendEntryRequest request) throws Exception
Exceptionpublic CompletableFuture<GetEntriesResponse> handleGet(GetEntriesRequest request) throws Exception
Exceptionpublic CompletableFuture<MetadataResponse> handleMetadata(MetadataRequest request) throws Exception
Exceptionpublic CompletableFuture<PullEntriesResponse> handlePull(PullEntriesRequest request) throws Exception
Exceptionpublic CompletableFuture<PushEntryResponse> handlePush(PushEntryRequest request) throws Exception
Exceptionpublic org.apache.rocketmq.remoting.protocol.RemotingCommand handleResponse(RequestOrResponse response, org.apache.rocketmq.remoting.protocol.RemotingCommand request)
public void startup()
startup in class DLedgerRpcServicepublic void shutdown()
shutdown in class DLedgerRpcServicepublic void setDLedger(AbstractDLedgerServer dLedger)
public org.apache.rocketmq.remoting.netty.NettyRemotingServer getRemotingServer()
public org.apache.rocketmq.remoting.netty.NettyRemotingClient getRemotingClient()
Copyright © 2023. All rights reserved.