This is an automated email from the ASF dual-hosted git repository. huxing pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/dubbo-go.git
The following commit(s) were added to refs/heads/master by this push: new ea6c157 Fix: alexstocks/getty issue 18 new c8554c3 Merge pull request #96 from divebomb/master ea6c157 is described below commit ea6c15753d59672a79f5b10988cb007a5c35b83d Author: AlexStocks <alexsto...@foxmail.com> AuthorDate: Fri Jun 14 22:20:07 2019 +0800 Fix: alexstocks/getty issue 18 --- protocol/dubbo/readwriter.go | 11 +++++------ protocol/dubbo/server.go | 8 ++++++-- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/protocol/dubbo/readwriter.go b/protocol/dubbo/readwriter.go index 6d789ae..529aa75 100644 --- a/protocol/dubbo/readwriter.go +++ b/protocol/dubbo/readwriter.go @@ -24,7 +24,7 @@ import ( import ( "github.com/dubbogo/getty" - "github.com/dubbogo/hessian2" + hessian "github.com/dubbogo/hessian2" perrors "github.com/pkg/errors" ) import ( @@ -89,12 +89,11 @@ func (p *RpcClientPackageHandler) Write(ss getty.Session, pkg interface{}) error // RpcServerPackageHandler //////////////////////////////////////////// -type RpcServerPackageHandler struct { -} +var ( + rpcServerPkgHandler = &RpcServerPackageHandler{} +) -func NewRpcServerPackageHandler() *RpcServerPackageHandler { - return &RpcServerPackageHandler{} -} +type RpcServerPackageHandler struct{} func (p *RpcServerPackageHandler) Read(ss getty.Session, data []byte) (interface{}, int, error) { pkg := &DubboPackage{ diff --git a/protocol/dubbo/server.go b/protocol/dubbo/server.go index 80568c6..8bed30f 100644 --- a/protocol/dubbo/server.go +++ b/protocol/dubbo/server.go @@ -79,6 +79,8 @@ type Server struct { conf ServerConfig tcpServer getty.Server exporter protocol.Exporter + + rpcHandler *RpcServerHandler } func NewServer(exporter protocol.Exporter) *Server { @@ -88,6 +90,8 @@ func NewServer(exporter protocol.Exporter) *Server { conf: *srvConf, } + s.rpcHandler = NewRpcServerHandler(s.exporter, s.conf.SessionNumber, s.conf.sessionTimeout) + return s } @@ -116,8 +120,8 @@ func (s *Server) newSession(session getty.Session) error { session.SetName(conf.GettySessionParam.SessionName) session.SetMaxMsgLen(conf.GettySessionParam.MaxMsgLen) - session.SetPkgHandler(NewRpcServerPackageHandler()) - session.SetEventListener(NewRpcServerHandler(s.exporter, conf.SessionNumber, conf.sessionTimeout)) + session.SetPkgHandler(rpcServerPkgHandler) + session.SetEventListener(s.rpcHandler) session.SetRQLen(conf.GettySessionParam.PkgRQSize) session.SetWQLen(conf.GettySessionParam.PkgWQSize) session.SetReadTimeout(conf.GettySessionParam.tcpReadTimeout)