From 7ab6c88f9c89a5e6fcfc03ea691ee073aa901c86 Mon Sep 17 00:00:00 2001 From: duanhf2012 <6549168@qq.com> Date: Thu, 23 Mar 2023 10:06:41 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E7=90=86=E4=BC=98=E5=8C=96rpc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- rpc/client.go | 23 ++++++++++++++--------- rpc/lclient.go | 2 +- rpc/rclient.go | 12 ++++++------ rpc/server.go | 2 ++ 4 files changed, 23 insertions(+), 16 deletions(-) diff --git a/rpc/client.go b/rpc/client.go index 3e11791..8a5d1ce 100644 --- a/rpc/client.go +++ b/rpc/client.go @@ -11,14 +11,19 @@ import ( "time" ) -const MaxCheckCallRpcCount = 1000 -const MaxPendingWriteNum = 200000 -const ConnectInterval = 2*time.Second -const RpcConnNum = 1 -const RpcLenMsgLen = 4 -const RpcMinMsgLen = 2 -const CheckRpcCallTimeoutInterval = 5*time.Second -const DefaultRpcTimeout = 15*time.Second +const( + DefaultRpcConnNum = 1 + DefaultRpcLenMsgLen = 4 + DefaultRpcMinMsgLen = 2 + DefaultMaxCheckCallRpcCount = 1000 + DefaultMaxPendingWriteNum = 200000 + + + DefaultConnectInterval = 2*time.Second + DefaultCheckRpcCallTimeoutInterval = 5*time.Second + DefaultRpcTimeout = 15*time.Second +) + var clientSeq uint32 type IRealClient interface { @@ -64,7 +69,7 @@ func (bc *Client) makeCallFail(call *Call) { func (bc *Client) checkRpcCallTimeout() { for{ - time.Sleep(CheckRpcCallTimeoutInterval) + time.Sleep(DefaultCheckRpcCallTimeoutInterval) now := time.Now() for i := 0; i < bc.maxCheckCallRpcCount; i++ { diff --git a/rpc/lclient.go b/rpc/lclient.go index 202a1d4..56c7831 100644 --- a/rpc/lclient.go +++ b/rpc/lclient.go @@ -119,7 +119,7 @@ func NewLClient(nodeId int) *Client{ client := &Client{} client.clientId = atomic.AddUint32(&clientSeq, 1) client.nodeId = nodeId - client.maxCheckCallRpcCount = MaxCheckCallRpcCount + client.maxCheckCallRpcCount = DefaultMaxCheckCallRpcCount client.callRpcTimeout = DefaultRpcTimeout lClient := &LClient{} diff --git a/rpc/rclient.go b/rpc/rclient.go index 16778a0..446f8d8 100644 --- a/rpc/rclient.go +++ b/rpc/rclient.go @@ -211,19 +211,19 @@ func NewRClient(nodeId int, addr string, maxRpcParamLen uint32,triggerRpcConnEve client := &Client{} client.clientId = atomic.AddUint32(&clientSeq, 1) client.nodeId = nodeId - client.maxCheckCallRpcCount = MaxCheckCallRpcCount + client.maxCheckCallRpcCount = DefaultMaxCheckCallRpcCount client.callRpcTimeout = DefaultRpcTimeout c:= &RClient{} c.selfClient = client c.Addr = addr - c.ConnectInterval = ConnectInterval - c.PendingWriteNum = MaxPendingWriteNum + c.ConnectInterval = DefaultConnectInterval + c.PendingWriteNum = DefaultMaxPendingWriteNum c.AutoReconnect = true c.TriggerRpcConnEvent = triggerRpcConnEvent - c.ConnNum = RpcConnNum - c.LenMsgLen = RpcLenMsgLen - c.MinMsgLen = RpcMinMsgLen + c.ConnNum = DefaultRpcConnNum + c.LenMsgLen = DefaultRpcLenMsgLen + c.MinMsgLen = DefaultRpcMinMsgLen c.ReadDeadline = Default_ReadWriteDeadline c.WriteDeadline = Default_ReadWriteDeadline c.LittleEndian = LittleEndian diff --git a/rpc/server.go b/rpc/server.go index 2300316..74711e8 100644 --- a/rpc/server.go +++ b/rpc/server.go @@ -84,6 +84,8 @@ func (server *Server) Start(listenAddr string, maxRpcParamLen uint32) { server.rpcServer.LittleEndian = LittleEndian server.rpcServer.WriteDeadline = Default_ReadWriteDeadline server.rpcServer.ReadDeadline = Default_ReadWriteDeadline + server.rpcServer.LenMsgLen = DefaultRpcLenMsgLen + server.rpcServer.Start() }