You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by fl...@apache.org on 2020/04/27 14:17:04 UTC
[dubbo-go] branch develop updated: Mod: add comment and modify log
level
This is an automated email from the ASF dual-hosted git repository.
flycash pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/dubbo-go.git
The following commit(s) were added to refs/heads/develop by this push:
new f04c170 Mod: add comment and modify log level
new b5d169c Merge pull request #492 from fangyincheng/add-comment
f04c170 is described below
commit f04c1702f3d24894dc99e4c23bae04aa07b12fb7
Author: fangyincheng <fa...@sina.com>
AuthorDate: Sat Apr 25 19:27:43 2020 +0800
Mod: add comment and modify log level
---
common/proxy/proxy.go | 7 +++----
common/proxy/proxy_factory.go | 2 +-
common/rpc_service.go | 23 +++++++++++------------
common/url.go | 4 ++--
protocol/dubbo/client.go | 27 ++++++++++++---------------
protocol/dubbo/codec.go | 10 +++++-----
protocol/dubbo/config.go | 6 +++---
protocol/dubbo/dubbo_exporter.go | 6 +++---
protocol/dubbo/dubbo_invoker.go | 13 +++++++------
protocol/dubbo/dubbo_protocol.go | 12 ++++++------
protocol/dubbo/listener.go | 4 ++--
protocol/dubbo/readwriter.go | 10 +++++++---
protocol/dubbo/server.go | 19 +++++++++----------
13 files changed, 71 insertions(+), 72 deletions(-)
diff --git a/common/proxy/proxy.go b/common/proxy/proxy.go
index 68ba3ff..f98a448 100644
--- a/common/proxy/proxy.go
+++ b/common/proxy/proxy.go
@@ -44,7 +44,7 @@ var (
typError = reflect.Zero(reflect.TypeOf((*error)(nil)).Elem()).Type()
)
-// NewProxy ...
+// NewProxy create service proxy.
func NewProxy(invoke protocol.Invoker, callBack interface{}, attachments map[string]string) *Proxy {
return &Proxy{
invoke: invoke,
@@ -59,7 +59,6 @@ func NewProxy(invoke protocol.Invoker, callBack interface{}, attachments map[str
// type XxxProvider struct {
// Yyy func(ctx context.Context, args []interface{}, rsp *Zzz) error
// }
-
func (p *Proxy) Implement(v common.RPCService) {
// check parameters, incoming interface must be a elem's pointer.
@@ -202,12 +201,12 @@ func (p *Proxy) Implement(v common.RPCService) {
}
-// Get ...
+// Get get rpc service instance.
func (p *Proxy) Get() common.RPCService {
return p.rpc
}
-// GetCallback ...
+// GetCallback get callback.
func (p *Proxy) GetCallback() interface{} {
return p.callBack
}
diff --git a/common/proxy/proxy_factory.go b/common/proxy/proxy_factory.go
index 7b249a3..34fa3fd 100644
--- a/common/proxy/proxy_factory.go
+++ b/common/proxy/proxy_factory.go
@@ -22,7 +22,7 @@ import (
"github.com/apache/dubbo-go/protocol"
)
-// ProxyFactory ...
+// ProxyFactory interface.
type ProxyFactory interface {
GetProxy(invoker protocol.Invoker, url *common.URL) *Proxy
GetAsyncProxy(invoker protocol.Invoker, callBack interface{}, url *common.URL) *Proxy
diff --git a/common/rpc_service.go b/common/rpc_service.go
index ebd1d02..d7d9007 100644
--- a/common/rpc_service.go
+++ b/common/rpc_service.go
@@ -59,7 +59,6 @@ type AsyncCallback func(response CallbackResponse)
// return map[string][string]{}
// }
const (
- // METHOD_MAPPER ...
METHOD_MAPPER = "MethodMapper"
)
@@ -68,7 +67,7 @@ var (
// because Typeof takes an empty interface value. This is annoying.
typeOfError = reflect.TypeOf((*error)(nil)).Elem()
- // ServiceMap ...
+ // ServiceMap store description of service.
// todo: lowerecas?
ServiceMap = &serviceMap{
serviceMap: make(map[string]map[string]*Service),
@@ -80,7 +79,7 @@ var (
// info of method
//////////////////////////
-// MethodType ...
+// MethodType is description of service method.
type MethodType struct {
method reflect.Method
ctxType reflect.Type // request context
@@ -88,27 +87,27 @@ type MethodType struct {
replyType reflect.Type // return value, otherwise it is nil
}
-// Method ...
+// Method get @m.method.
func (m *MethodType) Method() reflect.Method {
return m.method
}
-// CtxType ...
+// CtxType get @m.ctxType.
func (m *MethodType) CtxType() reflect.Type {
return m.ctxType
}
-// ArgsType ...
+// ArgsType get @m.argsType.
func (m *MethodType) ArgsType() []reflect.Type {
return m.argsType
}
-// ReplyType ...
+// ReplyType get @m.replyType.
func (m *MethodType) ReplyType() reflect.Type {
return m.replyType
}
-// SuiteContext ...
+// SuiteContext tranfer @ctx to reflect.Value type or get it from @m.ctxType.
func (m *MethodType) SuiteContext(ctx context.Context) reflect.Value {
if contextv := reflect.ValueOf(ctx); contextv.IsValid() {
return contextv
@@ -120,7 +119,7 @@ func (m *MethodType) SuiteContext(ctx context.Context) reflect.Value {
// info of service interface
//////////////////////////
-// Service ...
+// Service is description of service
type Service struct {
name string
rcvr reflect.Value
@@ -128,17 +127,17 @@ type Service struct {
methods map[string]*MethodType
}
-// Method ...
+// Method get @s.methods.
func (s *Service) Method() map[string]*MethodType {
return s.methods
}
-// RcvrType ...
+// RcvrType get @s.rcvrType.
func (s *Service) RcvrType() reflect.Type {
return s.rcvrType
}
-// Rcvr ...
+// Rcvr get @s.rcvr.
func (s *Service) Rcvr() reflect.Value {
return s.rcvr
}
diff --git a/common/url.go b/common/url.go
index 768b62d..a70ac7d 100644
--- a/common/url.go
+++ b/common/url.go
@@ -248,7 +248,7 @@ func NewURL(urlString string, opts ...option) (URL, error) {
return s, nil
}
-// URLEqual ...
+// URLEqual judge @url and @c is equal or not.
func (c URL) URLEqual(url URL) bool {
c.Ip = ""
c.Port = ""
@@ -316,7 +316,7 @@ func (c URL) Key() string {
return buildString
}
-// ServiceKey ...
+// ServiceKey get a unique key of a service.
func (c URL) ServiceKey() string {
intf := c.GetParam(constant.INTERFACE_KEY, strings.TrimPrefix(c.Path, "/"))
if intf == "" {
diff --git a/protocol/dubbo/client.go b/protocol/dubbo/client.go
index 5ec7db5..e6ffa64 100644
--- a/protocol/dubbo/client.go
+++ b/protocol/dubbo/client.go
@@ -88,7 +88,7 @@ func init() {
rand.Seed(time.Now().UnixNano())
}
-// SetClientConf ...
+// SetClientConf set dubbo client config.
func SetClientConf(c ClientConfig) {
clientConf = &c
err := clientConf.CheckValidity()
@@ -99,7 +99,7 @@ func SetClientConf(c ClientConfig) {
setClientGrpool()
}
-// GetClientConf ...
+// GetClientConf get dubbo client config.
func GetClientConf() ClientConfig {
return *clientConf
}
@@ -129,7 +129,7 @@ type AsyncCallbackResponse struct {
Reply interface{}
}
-// Client ...
+// Client is dubbo protocol client.
type Client struct {
opts Options
conf ClientConfig
@@ -139,7 +139,7 @@ type Client struct {
pendingResponses *sync.Map
}
-// NewClient ...
+// NewClient create a new Client.
func NewClient(opt Options) *Client {
switch {
@@ -167,7 +167,7 @@ func NewClient(opt Options) *Client {
return c
}
-// Request ...
+// Request is dubbo protocol request.
type Request struct {
addr string
svcUrl common.URL
@@ -176,7 +176,7 @@ type Request struct {
atta map[string]string
}
-// NewRequest ...
+// NewRequest create a new Request.
func NewRequest(addr string, svcUrl common.URL, method string, args interface{}, atta map[string]string) *Request {
return &Request{
addr: addr,
@@ -187,13 +187,13 @@ func NewRequest(addr string, svcUrl common.URL, method string, args interface{},
}
}
-// Response ...
+// Response is dubbo protocol response.
type Response struct {
reply interface{}
atta map[string]string
}
-// NewResponse ...
+// NewResponse create a new Response.
func NewResponse(reply interface{}, atta map[string]string) *Response {
return &Response{
reply: reply,
@@ -201,15 +201,14 @@ func NewResponse(reply interface{}, atta map[string]string) *Response {
}
}
-// CallOneway call one way
+// CallOneway call by one way
func (c *Client) CallOneway(request *Request) error {
return perrors.WithStack(c.call(CT_OneWay, request, NewResponse(nil, nil), nil))
}
-// Call if @response is nil, the transport layer will get the response without notify the invoker.
+// Call call remoting by two way or one way, if @response.reply is nil, the way of call is one way.
func (c *Client) Call(request *Request, response *Response) error {
-
ct := CT_TwoWay
if response.reply == nil {
ct = CT_OneWay
@@ -218,14 +217,12 @@ func (c *Client) Call(request *Request, response *Response) error {
return perrors.WithStack(c.call(ct, request, response, nil))
}
-// AsyncCall ...
+// AsyncCall call remoting by async with callback.
func (c *Client) AsyncCall(request *Request, callback common.AsyncCallback, response *Response) error {
-
return perrors.WithStack(c.call(CT_TwoWay, request, response, callback))
}
func (c *Client) call(ct CallType, request *Request, response *Response, callback common.AsyncCallback) error {
-
p := &DubboPackage{}
p.Service.Path = strings.TrimPrefix(request.svcUrl.Path, "/")
p.Service.Interface = request.svcUrl.GetParam(constant.INTERFACE_KEY, "")
@@ -293,7 +290,7 @@ func (c *Client) call(ct CallType, request *Request, response *Response, callbac
return perrors.WithStack(err)
}
-// Close ...
+// Close close the client pool.
func (c *Client) Close() {
if c.pool != nil {
c.pool.close()
diff --git a/protocol/dubbo/codec.go b/protocol/dubbo/codec.go
index 76416b2..620a57d 100644
--- a/protocol/dubbo/codec.go
+++ b/protocol/dubbo/codec.go
@@ -69,7 +69,7 @@ func (p DubboPackage) String() string {
return fmt.Sprintf("DubboPackage: Header-%v, Path-%v, Body-%v", p.Header, p.Service, p.Body)
}
-// Marshal ...
+// Marshal encode hessian package.
func (p *DubboPackage) Marshal() (*bytes.Buffer, error) {
codec := hessian.NewHessianCodec(nil)
@@ -81,7 +81,7 @@ func (p *DubboPackage) Marshal() (*bytes.Buffer, error) {
return bytes.NewBuffer(pkg), nil
}
-// Unmarshal ...
+// Unmarshal dncode hessian package.
func (p *DubboPackage) Unmarshal(buf *bytes.Buffer, opts ...interface{}) error {
// fix issue https://github.com/apache/dubbo-go/issues/380
bufLen := buf.Len()
@@ -125,7 +125,7 @@ func (p *DubboPackage) Unmarshal(buf *bytes.Buffer, opts ...interface{}) error {
// PendingResponse
////////////////////////////////////////////
-// PendingResponse ...
+// PendingResponse is a pending response.
type PendingResponse struct {
seq uint64
err error
@@ -136,7 +136,7 @@ type PendingResponse struct {
done chan struct{}
}
-// NewPendingResponse ...
+// NewPendingResponse create a PendingResponses.
func NewPendingResponse() *PendingResponse {
return &PendingResponse{
start: time.Now(),
@@ -145,7 +145,7 @@ func NewPendingResponse() *PendingResponse {
}
}
-// GetCallResponse ...
+// GetCallResponse get AsyncCallbackResponse.
func (r PendingResponse) GetCallResponse() common.CallbackResponse {
return AsyncCallbackResponse{
Cause: r.err,
diff --git a/protocol/dubbo/config.go b/protocol/dubbo/config.go
index dbc6989..6a1daf8 100644
--- a/protocol/dubbo/config.go
+++ b/protocol/dubbo/config.go
@@ -147,7 +147,7 @@ func GetDefaultServerConfig() ServerConfig {
}
}
-// CheckValidity ...
+// CheckValidity confirm getty sessian params.
func (c *GettySessionParam) CheckValidity() error {
var err error
@@ -170,7 +170,7 @@ func (c *GettySessionParam) CheckValidity() error {
return nil
}
-// CheckValidity ...
+// CheckValidity confirm client params.
func (c *ClientConfig) CheckValidity() error {
var err error
@@ -192,7 +192,7 @@ func (c *ClientConfig) CheckValidity() error {
return perrors.WithStack(c.GettySessionParam.CheckValidity())
}
-// CheckValidity ...
+// CheckValidity confirm server params.
func (c *ServerConfig) CheckValidity() error {
var err error
diff --git a/protocol/dubbo/dubbo_exporter.go b/protocol/dubbo/dubbo_exporter.go
index 1c45c40..dd80937 100644
--- a/protocol/dubbo/dubbo_exporter.go
+++ b/protocol/dubbo/dubbo_exporter.go
@@ -28,19 +28,19 @@ import (
"github.com/apache/dubbo-go/protocol"
)
-// DubboExporter ...
+// DubboExporter is dubbo service exporter.
type DubboExporter struct {
protocol.BaseExporter
}
-// NewDubboExporter ...
+// NewDubboExporter get a DubboExporter.
func NewDubboExporter(key string, invoker protocol.Invoker, exporterMap *sync.Map) *DubboExporter {
return &DubboExporter{
BaseExporter: *protocol.NewBaseExporter(key, invoker, exporterMap),
}
}
-// Unexport ...
+// Unexport unexport dubbo service exporter.
func (de *DubboExporter) Unexport() {
serviceId := de.GetInvoker().GetUrl().GetParam(constant.BEAN_NAME_KEY, "")
interfaceName := de.GetInvoker().GetUrl().GetParam(constant.INTERFACE_KEY, "")
diff --git a/protocol/dubbo/dubbo_invoker.go b/protocol/dubbo/dubbo_invoker.go
index 09c3725..59202d5 100644
--- a/protocol/dubbo/dubbo_invoker.go
+++ b/protocol/dubbo/dubbo_invoker.go
@@ -39,8 +39,9 @@ import (
)
var (
- // ErrNoReply ...
- ErrNoReply = perrors.New("request need @response")
+ // ErrNoReply
+ ErrNoReply = perrors.New("request need @response")
+ // ErrDestroyedInvoker
ErrDestroyedInvoker = perrors.New("request Destroyed invoker")
)
@@ -48,7 +49,7 @@ var (
attachmentKey = []string{constant.INTERFACE_KEY, constant.GROUP_KEY, constant.TOKEN_KEY, constant.TIMEOUT_KEY}
)
-// DubboInvoker ...
+// DubboInvoker is dubbo client invoker.
type DubboInvoker struct {
protocol.BaseInvoker
client *Client
@@ -57,7 +58,7 @@ type DubboInvoker struct {
reqNum int64
}
-// NewDubboInvoker ...
+// NewDubboInvoker create dubbo client invoker.
func NewDubboInvoker(url common.URL, client *Client) *DubboInvoker {
return &DubboInvoker{
BaseInvoker: *protocol.NewBaseInvoker(url),
@@ -66,7 +67,7 @@ func NewDubboInvoker(url common.URL, client *Client) *DubboInvoker {
}
}
-// Invoke ...
+// Invoke call remoting.
func (di *DubboInvoker) Invoke(ctx context.Context, invocation protocol.Invocation) protocol.Result {
var (
err error
@@ -122,7 +123,7 @@ func (di *DubboInvoker) Invoke(ctx context.Context, invocation protocol.Invocati
return &result
}
-// Destroy ...
+// Destroy destroy dubbo client invoker.
func (di *DubboInvoker) Destroy() {
di.quitOnce.Do(func() {
for {
diff --git a/protocol/dubbo/dubbo_protocol.go b/protocol/dubbo/dubbo_protocol.go
index 355dbc8..b7d0a8a 100644
--- a/protocol/dubbo/dubbo_protocol.go
+++ b/protocol/dubbo/dubbo_protocol.go
@@ -45,14 +45,14 @@ var (
dubboProtocol *DubboProtocol
)
-// DubboProtocol ...
+// DubboProtocol is a dubbo protocol implement.
type DubboProtocol struct {
protocol.BaseProtocol
serverMap map[string]*Server
serverLock sync.Mutex
}
-// NewDubboProtocol ...
+// NewDubboProtocol create a dubbo protocol.
func NewDubboProtocol() *DubboProtocol {
return &DubboProtocol{
BaseProtocol: protocol.NewBaseProtocol(),
@@ -60,7 +60,7 @@ func NewDubboProtocol() *DubboProtocol {
}
}
-// Export ...
+// Export export dubbo service.
func (dp *DubboProtocol) Export(invoker protocol.Invoker) protocol.Exporter {
url := invoker.GetUrl()
serviceKey := url.ServiceKey()
@@ -73,7 +73,7 @@ func (dp *DubboProtocol) Export(invoker protocol.Invoker) protocol.Exporter {
return exporter
}
-// Refer ...
+// Refer create dubbo service reference.
func (dp *DubboProtocol) Refer(url common.URL) protocol.Invoker {
//default requestTimeout
var requestTimeout = config.GetConsumerConfig().RequestTimeout
@@ -92,7 +92,7 @@ func (dp *DubboProtocol) Refer(url common.URL) protocol.Invoker {
return invoker
}
-// Destroy ...
+// Destroy destroy dubbo service.
func (dp *DubboProtocol) Destroy() {
logger.Infof("DubboProtocol destroy.")
@@ -124,7 +124,7 @@ func (dp *DubboProtocol) openServer(url common.URL) {
}
}
-// GetProtocol ...
+// GetProtocol get a single dubbo protocol.
func GetProtocol() protocol.Protocol {
if dubboProtocol == nil {
dubboProtocol = NewDubboProtocol()
diff --git a/protocol/dubbo/listener.go b/protocol/dubbo/listener.go
index 0251b78..1f4cc00 100644
--- a/protocol/dubbo/listener.go
+++ b/protocol/dubbo/listener.go
@@ -86,7 +86,7 @@ func (h *RpcClientHandler) OnOpen(session getty.Session) error {
// OnError ...
func (h *RpcClientHandler) OnError(session getty.Session, err error) {
- logger.Infof("session{%s} got error{%v}, will be closed.", session.Stat(), err)
+ logger.Warnf("session{%s} got error{%v}, will be closed.", session.Stat(), err)
h.conn.removeSession(session)
}
@@ -201,7 +201,7 @@ func (h *RpcServerHandler) OnOpen(session getty.Session) error {
// OnError ...
func (h *RpcServerHandler) OnError(session getty.Session, err error) {
- logger.Infof("session{%s} got error{%v}, will be closed.", session.Stat(), err)
+ logger.Warnf("session{%s} got error{%v}, will be closed.", session.Stat(), err)
h.rwlock.Lock()
delete(h.sessionMap, session)
h.rwlock.Unlock()
diff --git a/protocol/dubbo/readwriter.go b/protocol/dubbo/readwriter.go
index b5c4f50..9cc7ea2 100644
--- a/protocol/dubbo/readwriter.go
+++ b/protocol/dubbo/readwriter.go
@@ -38,16 +38,17 @@ import (
// RpcClientPackageHandler
////////////////////////////////////////////
-// RpcClientPackageHandler ...
+// RpcClientPackageHandler handle package for client in getty.
type RpcClientPackageHandler struct {
client *Client
}
-// NewRpcClientPackageHandler ...
+// NewRpcClientPackageHandler create a RpcClientPackageHandler.
func NewRpcClientPackageHandler(client *Client) *RpcClientPackageHandler {
return &RpcClientPackageHandler{client: client}
}
+// Read decode @data to DubboPackage.
func (p *RpcClientPackageHandler) Read(ss getty.Session, data []byte) (interface{}, int, error) {
pkg := &DubboPackage{}
@@ -72,6 +73,7 @@ func (p *RpcClientPackageHandler) Read(ss getty.Session, data []byte) (interface
return pkg, hessian.HEADER_LENGTH + pkg.Header.BodyLen, nil
}
+// Write encode @pkg.
func (p *RpcClientPackageHandler) Write(ss getty.Session, pkg interface{}) ([]byte, error) {
req, ok := pkg.(*DubboPackage)
if !ok {
@@ -96,9 +98,10 @@ var (
rpcServerPkgHandler = &RpcServerPackageHandler{}
)
-// RpcServerPackageHandler ...
+// RpcServerPackageHandler handle package for server in getty.
type RpcServerPackageHandler struct{}
+// Read decode @data to DubboPackage.
func (p *RpcServerPackageHandler) Read(ss getty.Session, data []byte) (interface{}, int, error) {
pkg := &DubboPackage{
Body: make([]interface{}, 7),
@@ -169,6 +172,7 @@ func (p *RpcServerPackageHandler) Read(ss getty.Session, data []byte) (interface
return pkg, hessian.HEADER_LENGTH + pkg.Header.BodyLen, nil
}
+// Write encode @pkg.
func (p *RpcServerPackageHandler) Write(ss getty.Session, pkg interface{}) ([]byte, error) {
res, ok := pkg.(*DubboPackage)
if !ok {
diff --git a/protocol/dubbo/server.go b/protocol/dubbo/server.go
index bd2b37b..8de353a 100644
--- a/protocol/dubbo/server.go
+++ b/protocol/dubbo/server.go
@@ -71,10 +71,10 @@ func init() {
if err := srvConf.CheckValidity(); err != nil {
panic(err)
}
- SetServerGrpool()
+ setServerGrpool()
}
-// SetServerConfig ...
+// SetServerConfig set dubbo server config.
func SetServerConfig(s ServerConfig) {
srvConf = &s
err := srvConf.CheckValidity()
@@ -82,30 +82,29 @@ func SetServerConfig(s ServerConfig) {
logger.Warnf("[ServerConfig CheckValidity] error: %v", err)
return
}
- SetServerGrpool()
+ setServerGrpool()
}
-// GetServerConfig ...
+// GetServerConfig get dubbo server config.
func GetServerConfig() ServerConfig {
return *srvConf
}
-// SetServerGrpool ...
-func SetServerGrpool() {
+func setServerGrpool() {
if srvConf.GrPoolSize > 1 {
srvGrpool = gxsync.NewTaskPool(gxsync.WithTaskPoolTaskPoolSize(srvConf.GrPoolSize), gxsync.WithTaskPoolTaskQueueLength(srvConf.QueueLen),
gxsync.WithTaskPoolTaskQueueNumber(srvConf.QueueNumber))
}
}
-// Server ...
+// Server is dubbo protocol server.
type Server struct {
conf ServerConfig
tcpServer getty.Server
rpcHandler *RpcServerHandler
}
-// NewServer ...
+// NewServer create a new Server.
func NewServer() *Server {
s := &Server{
@@ -156,7 +155,7 @@ func (s *Server) newSession(session getty.Session) error {
return nil
}
-// Start ...
+// Start start dubbo server.
func (s *Server) Start(url common.URL) {
var (
addr string
@@ -173,7 +172,7 @@ func (s *Server) Start(url common.URL) {
}
-// Stop ...
+// Stop stop dubbo server.
func (s *Server) Stop() {
s.tcpServer.Close()
}