This is an automated email from the ASF dual-hosted git repository.

alexstocks pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo-go-samples.git


The following commit(s) were added to refs/heads/master by this push:
     new 302b3ad1 support all (#481)
302b3ad1 is described below

commit 302b3ad1db7fbd0dda7be0681f982166d3387ce3
Author: bobtthp <[email protected]>
AuthorDate: Fri Jan 13 22:04:48 2023 +0800

    support all (#481)
    
    * support all
    
    * client use serivce registry-type
    
    * add readme
    
    * update dep
    
    * add readme
    
    * import format
    
    * fix format
    
    * delete blank line
    
    * go mod
    
    * update go.sum
    
    Co-authored-by: bobtthp <[email protected]>
    Co-authored-by: bob <[email protected]>
---
 .run/service-discovery-nacos-server.run.xml        | 14 -----------
 registry/all/README.md                             | 29 ++++++++++++++++++++++
 .../all/nacos}/go-client/cmd/client.go             | 28 ++++++++++-----------
 registry/all/nacos/go-client/conf/dubbogo.yml      | 14 +++++++++++
 .../all/nacos/go-server/cmd/server.go              | 27 ++++++++------------
 registry/all/nacos/go-server/conf/dubbogo.yml      | 17 +++++++++++++
 .../all/zookeeper}/go-client/cmd/client.go         | 28 ++++++++++-----------
 registry/all/zookeeper/go-client/conf/dubbogo.yml  | 16 ++++++++++++
 .../all/zookeeper/go-server/cmd/server.go          | 27 ++++++++------------
 registry/all/zookeeper/go-server/conf/dubbogo.yml  | 17 +++++++++++++
 seata-go/tcc/client/cmd/client.go                  |  2 ++
 seata-go/tcc/server/cmd/server.go                  |  2 ++
 seata-go/tcc/server/service/user_provider.go       |  1 +
 tls/dubbo/go-client/cmd/client.go                  |  3 ++-
 tls/dubbo/go-server/cmd/server.go                  |  3 ++-
 .../go-server/pkg/wrapper_array_class_provider.go  |  4 +--
 tls/triple/go-client/cmd/client.go                 |  1 +
 tls/triple/go-server/cmd/server.go                 |  1 +
 18 files changed, 152 insertions(+), 82 deletions(-)

diff --git a/.run/service-discovery-nacos-server.run.xml 
b/.run/service-discovery-nacos-server.run.xml
deleted file mode 100644
index 830f9908..00000000
--- a/.run/service-discovery-nacos-server.run.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<component name="ProjectRunConfigurationManager">
-  <configuration default="false" name="service-discovery-nacos-server" 
type="GoApplicationRunConfiguration" factoryName="Go Application" 
folderName="service-discovery">
-    <module name="dubbo-go-samples" />
-    <working_directory value="$PROJECT_DIR$" />
-    <envs>
-      <env name="DUBBO_GO_CONFIG_PATH" 
value="registry/servicediscovery/nacos/go-server/conf/dubbogo.yml" />
-    </envs>
-    <kind value="PACKAGE" />
-    <package 
value="github.com/apache/dubbo-go-samples/registry/servicediscovery/nacos/go-server/cmd"
 />
-    <directory value="$PROJECT_DIR$" />
-    <filePath 
value="$PROJECT_DIR$/registry/servicediscovery/zookeeper/go-server/cmd/server.go"
 />
-    <method v="2" />
-  </configuration>
-</component>
\ No newline at end of file
diff --git a/registry/all/README.md b/registry/all/README.md
new file mode 100644
index 00000000..9aa336c9
--- /dev/null
+++ b/registry/all/README.md
@@ -0,0 +1,29 @@
+# Dubbo Go registry-type support all
+
+| 参数         | 注册方式       |
+|------------|------------|
+| interface  | 接口级        |
+| service    | 应用级        |
+| all        | 应用级 && 接口级 |
+
+
+## 使用方法
+1. 启动 zk/nacos
+
+2. 启动服务端
+   将启动配置修改为: registry-type: all
+```shell
+   cd registry/all/go-server
+   DUBBO_GO_CONFIG_PATH=registry/all/nacos/go-server/conf/dubbogo.yml && go 
run server.go
+   ```
+
+3. 启动客户端
+   由于服务注册方式支持双注册,客户端使用 service/interface 两种参数均可访问服务端
+```shell
+  cd registry/all/go-client
+  DUBBO_GO_CONFIG_PATH=registry/all/nacos/go-client/conf/dubbogo.yml && go run 
client.go 
+```
+
+
+
+
diff --git a/tls/triple/go-client/cmd/client.go 
b/registry/all/nacos/go-client/cmd/client.go
similarity index 65%
copy from tls/triple/go-client/cmd/client.go
copy to registry/all/nacos/go-client/cmd/client.go
index 09350474..e87c584f 100644
--- a/tls/triple/go-client/cmd/client.go
+++ b/registry/all/nacos/go-client/cmd/client.go
@@ -24,35 +24,33 @@ import (
 import (
        "dubbo.apache.org/dubbo-go/v3/config"
        _ "dubbo.apache.org/dubbo-go/v3/imports"
+
        "github.com/dubbogo/gost/log/logger"
 )
 
 import (
-       _ "github.com/apache/dubbo-go-samples/tls/triple/codec"
+       "github.com/apache/dubbo-go-samples/api"
 )
 
-type User struct {
-       ID   string
-       Name string
-       Age  int32
-}
+var grpcGreeterImpl = &api.GreeterClientImpl{}
 
-type UserProvider struct {
-       GetUser func(context.Context, *User, *User, string) (*User, error)
+func init() {
+       config.SetConsumerService(grpcGreeterImpl)
 }
 
-var userProvider = new(UserProvider)
-
-// export 
DUBBO_GO_CONFIG_PATH=PATH_TO_SAMPLES/rpc/triple/codec-extension/go-client/conf/dubbogo.yaml
+// export DUBBO_GO_CONFIG_PATH = 
PATH_TO_SAMPLES/registry/servicediscovery/zookeeper/go-client/conf/dubbogo.yml
 func main() {
-       config.SetConsumerService(userProvider)
        if err := config.Load(); err != nil {
                panic(err)
        }
 
-       user, err := userProvider.GetUser(context.TODO(), &User{Name: "zlber"}, 
&User{Name: "zlber2"}, "testName")
+       logger.Info("start to test dubbo")
+       req := &api.HelloRequest{
+               Name: "laurence",
+       }
+       reply, err := grpcGreeterImpl.SayHello(context.Background(), req)
        if err != nil {
-               panic(err)
+               logger.Error(err)
        }
-       logger.Infof("response result: %v\n", user)
+       logger.Infof("client response result: %v\n", reply)
 }
diff --git a/registry/all/nacos/go-client/conf/dubbogo.yml 
b/registry/all/nacos/go-client/conf/dubbogo.yml
new file mode 100644
index 00000000..33f1b37f
--- /dev/null
+++ b/registry/all/nacos/go-client/conf/dubbogo.yml
@@ -0,0 +1,14 @@
+dubbo:
+  registries:
+    demoZK:
+      protocol: nacos
+      address: 127.0.0.1:8848
+      registry-type: service
+  metadata-report:
+    protocol: nacos
+    address: 127.0.0.1:8848
+  consumer:
+    references:
+      GreeterClientImpl:
+        protocol: tri
+        interface: com.apache.dubbo.sample.basic.IGreeter # must be compatible 
with grpc or dubbo-java
\ No newline at end of file
diff --git a/tls/triple/go-client/cmd/client.go 
b/registry/all/nacos/go-server/cmd/server.go
similarity index 64%
copy from tls/triple/go-client/cmd/client.go
copy to registry/all/nacos/go-server/cmd/server.go
index 09350474..9f473d98 100644
--- a/tls/triple/go-client/cmd/client.go
+++ b/registry/all/nacos/go-server/cmd/server.go
@@ -24,35 +24,28 @@ import (
 import (
        "dubbo.apache.org/dubbo-go/v3/config"
        _ "dubbo.apache.org/dubbo-go/v3/imports"
+
        "github.com/dubbogo/gost/log/logger"
 )
 
 import (
-       _ "github.com/apache/dubbo-go-samples/tls/triple/codec"
+       "github.com/apache/dubbo-go-samples/api"
 )
 
-type User struct {
-       ID   string
-       Name string
-       Age  int32
+type GreeterProvider struct {
+       api.UnimplementedGreeterServer
 }
 
-type UserProvider struct {
-       GetUser func(context.Context, *User, *User, string) (*User, error)
+func (s *GreeterProvider) SayHello(ctx context.Context, in *api.HelloRequest) 
(*api.User, error) {
+       logger.Infof("Dubbo3 GreeterProvider get user request name = %s\n", 
in.Name)
+       return &api.User{Name: "Hello " + in.Name, Id: "12345", Age: 21}, nil
 }
 
-var userProvider = new(UserProvider)
-
-// export 
DUBBO_GO_CONFIG_PATH=PATH_TO_SAMPLES/rpc/triple/codec-extension/go-client/conf/dubbogo.yaml
+// export DUBBO_GO_CONFIG_PATH = 
PATH_TO_SAMPLES/registry/servicediscovery/zookeeper/go-server/conf/dubbogo.yml
 func main() {
-       config.SetConsumerService(userProvider)
+       config.SetProviderService(&GreeterProvider{})
        if err := config.Load(); err != nil {
                panic(err)
        }
-
-       user, err := userProvider.GetUser(context.TODO(), &User{Name: "zlber"}, 
&User{Name: "zlber2"}, "testName")
-       if err != nil {
-               panic(err)
-       }
-       logger.Infof("response result: %v\n", user)
+       select {}
 }
diff --git a/registry/all/nacos/go-server/conf/dubbogo.yml 
b/registry/all/nacos/go-server/conf/dubbogo.yml
new file mode 100644
index 00000000..e6823488
--- /dev/null
+++ b/registry/all/nacos/go-server/conf/dubbogo.yml
@@ -0,0 +1,17 @@
+dubbo:
+  registries:
+    demoZK:
+      protocol: nacos
+      address: 127.0.0.1:8848
+      registry-type: all
+  metadata-report:
+    protocol: nacos
+    address: 127.0.0.1:8848
+  protocols:
+    triple:
+      name: tri
+      port: 20000
+  provider:
+    services:
+      GreeterProvider:
+        interface: com.apache.dubbo.sample.basic.IGreeter # must be compatible 
with grpc or dubbo-java
\ No newline at end of file
diff --git a/tls/triple/go-client/cmd/client.go 
b/registry/all/zookeeper/go-client/cmd/client.go
similarity index 65%
copy from tls/triple/go-client/cmd/client.go
copy to registry/all/zookeeper/go-client/cmd/client.go
index 09350474..e87c584f 100644
--- a/tls/triple/go-client/cmd/client.go
+++ b/registry/all/zookeeper/go-client/cmd/client.go
@@ -24,35 +24,33 @@ import (
 import (
        "dubbo.apache.org/dubbo-go/v3/config"
        _ "dubbo.apache.org/dubbo-go/v3/imports"
+
        "github.com/dubbogo/gost/log/logger"
 )
 
 import (
-       _ "github.com/apache/dubbo-go-samples/tls/triple/codec"
+       "github.com/apache/dubbo-go-samples/api"
 )
 
-type User struct {
-       ID   string
-       Name string
-       Age  int32
-}
+var grpcGreeterImpl = &api.GreeterClientImpl{}
 
-type UserProvider struct {
-       GetUser func(context.Context, *User, *User, string) (*User, error)
+func init() {
+       config.SetConsumerService(grpcGreeterImpl)
 }
 
-var userProvider = new(UserProvider)
-
-// export 
DUBBO_GO_CONFIG_PATH=PATH_TO_SAMPLES/rpc/triple/codec-extension/go-client/conf/dubbogo.yaml
+// export DUBBO_GO_CONFIG_PATH = 
PATH_TO_SAMPLES/registry/servicediscovery/zookeeper/go-client/conf/dubbogo.yml
 func main() {
-       config.SetConsumerService(userProvider)
        if err := config.Load(); err != nil {
                panic(err)
        }
 
-       user, err := userProvider.GetUser(context.TODO(), &User{Name: "zlber"}, 
&User{Name: "zlber2"}, "testName")
+       logger.Info("start to test dubbo")
+       req := &api.HelloRequest{
+               Name: "laurence",
+       }
+       reply, err := grpcGreeterImpl.SayHello(context.Background(), req)
        if err != nil {
-               panic(err)
+               logger.Error(err)
        }
-       logger.Infof("response result: %v\n", user)
+       logger.Infof("client response result: %v\n", reply)
 }
diff --git a/registry/all/zookeeper/go-client/conf/dubbogo.yml 
b/registry/all/zookeeper/go-client/conf/dubbogo.yml
new file mode 100644
index 00000000..5bc0fae9
--- /dev/null
+++ b/registry/all/zookeeper/go-client/conf/dubbogo.yml
@@ -0,0 +1,16 @@
+dubbo:
+  registries:
+    demoZK:
+      protocol: zookeeper
+      address: 127.0.0.1:2181
+      registry-type: all
+  metadata-report:
+    protocol: zookeeper
+    address: 127.0.0.1:2181
+  consumer:
+    registry-ids:
+      - demoZK
+    references:
+      GreeterClientImpl:
+        protocol: tri
+        interface: com.apache.dubbo.sample.basic.IGreeter # must be compatible 
with grpc or dubbo-java
\ No newline at end of file
diff --git a/tls/triple/go-client/cmd/client.go 
b/registry/all/zookeeper/go-server/cmd/server.go
similarity index 64%
copy from tls/triple/go-client/cmd/client.go
copy to registry/all/zookeeper/go-server/cmd/server.go
index 09350474..9f473d98 100644
--- a/tls/triple/go-client/cmd/client.go
+++ b/registry/all/zookeeper/go-server/cmd/server.go
@@ -24,35 +24,28 @@ import (
 import (
        "dubbo.apache.org/dubbo-go/v3/config"
        _ "dubbo.apache.org/dubbo-go/v3/imports"
+
        "github.com/dubbogo/gost/log/logger"
 )
 
 import (
-       _ "github.com/apache/dubbo-go-samples/tls/triple/codec"
+       "github.com/apache/dubbo-go-samples/api"
 )
 
-type User struct {
-       ID   string
-       Name string
-       Age  int32
+type GreeterProvider struct {
+       api.UnimplementedGreeterServer
 }
 
-type UserProvider struct {
-       GetUser func(context.Context, *User, *User, string) (*User, error)
+func (s *GreeterProvider) SayHello(ctx context.Context, in *api.HelloRequest) 
(*api.User, error) {
+       logger.Infof("Dubbo3 GreeterProvider get user request name = %s\n", 
in.Name)
+       return &api.User{Name: "Hello " + in.Name, Id: "12345", Age: 21}, nil
 }
 
-var userProvider = new(UserProvider)
-
-// export 
DUBBO_GO_CONFIG_PATH=PATH_TO_SAMPLES/rpc/triple/codec-extension/go-client/conf/dubbogo.yaml
+// export DUBBO_GO_CONFIG_PATH = 
PATH_TO_SAMPLES/registry/servicediscovery/zookeeper/go-server/conf/dubbogo.yml
 func main() {
-       config.SetConsumerService(userProvider)
+       config.SetProviderService(&GreeterProvider{})
        if err := config.Load(); err != nil {
                panic(err)
        }
-
-       user, err := userProvider.GetUser(context.TODO(), &User{Name: "zlber"}, 
&User{Name: "zlber2"}, "testName")
-       if err != nil {
-               panic(err)
-       }
-       logger.Infof("response result: %v\n", user)
+       select {}
 }
diff --git a/registry/all/zookeeper/go-server/conf/dubbogo.yml 
b/registry/all/zookeeper/go-server/conf/dubbogo.yml
new file mode 100644
index 00000000..458ef444
--- /dev/null
+++ b/registry/all/zookeeper/go-server/conf/dubbogo.yml
@@ -0,0 +1,17 @@
+dubbo:
+  registries:
+    demoZK:
+      protocol: zookeeper
+      address: 127.0.0.1:2181
+      registry-type: all
+  metadata-report:
+    protocol: zookeeper
+    address: 127.0.0.1:2181
+  protocols:
+    triple:
+      name: tri
+      port: 20000
+  provider:
+    services:
+      GreeterProvider:
+        interface: com.apache.dubbo.sample.basic.IGreeter # must be compatible 
with grpc or dubbo-java
\ No newline at end of file
diff --git a/seata-go/tcc/client/cmd/client.go 
b/seata-go/tcc/client/cmd/client.go
index 2553ac9f..1705a39b 100644
--- a/seata-go/tcc/client/cmd/client.go
+++ b/seata-go/tcc/client/cmd/client.go
@@ -24,7 +24,9 @@ import (
 import (
        "dubbo.apache.org/dubbo-go/v3/config"
        _ "dubbo.apache.org/dubbo-go/v3/imports"
+
        "github.com/dubbogo/gost/log/logger"
+
        _ "github.com/seata/seata-go/pkg/imports"
        "github.com/seata/seata-go/pkg/integration"
        "github.com/seata/seata-go/pkg/rm/tcc"
diff --git a/seata-go/tcc/server/cmd/server.go 
b/seata-go/tcc/server/cmd/server.go
index d4896475..054b3b33 100644
--- a/seata-go/tcc/server/cmd/server.go
+++ b/seata-go/tcc/server/cmd/server.go
@@ -28,7 +28,9 @@ import (
 import (
        "dubbo.apache.org/dubbo-go/v3/config"
        _ "dubbo.apache.org/dubbo-go/v3/imports"
+
        "github.com/dubbogo/gost/log/logger"
+
        _ "github.com/seata/seata-go/pkg/imports"
        "github.com/seata/seata-go/pkg/integration"
        "github.com/seata/seata-go/pkg/rm/tcc"
diff --git a/seata-go/tcc/server/service/user_provider.go 
b/seata-go/tcc/server/service/user_provider.go
index d978837f..a5fef0cd 100644
--- a/seata-go/tcc/server/service/user_provider.go
+++ b/seata-go/tcc/server/service/user_provider.go
@@ -23,6 +23,7 @@ import (
 
 import (
        "github.com/dubbogo/gost/log/logger"
+
        "github.com/seata/seata-go/pkg/tm"
 )
 
diff --git a/tls/dubbo/go-client/cmd/client.go 
b/tls/dubbo/go-client/cmd/client.go
index bb67d21e..917f777c 100644
--- a/tls/dubbo/go-client/cmd/client.go
+++ b/tls/dubbo/go-client/cmd/client.go
@@ -24,9 +24,10 @@ import (
 import (
        "dubbo.apache.org/dubbo-go/v3/config"
        _ "dubbo.apache.org/dubbo-go/v3/imports"
-       "github.com/dubbogo/gost/log/logger"
 
        hessian "github.com/apache/dubbo-go-hessian2"
+
+       "github.com/dubbogo/gost/log/logger"
 )
 
 import (
diff --git a/tls/dubbo/go-server/cmd/server.go 
b/tls/dubbo/go-server/cmd/server.go
index 9613a486..2b109837 100644
--- a/tls/dubbo/go-server/cmd/server.go
+++ b/tls/dubbo/go-server/cmd/server.go
@@ -28,9 +28,10 @@ import (
 import (
        "dubbo.apache.org/dubbo-go/v3/config"
        _ "dubbo.apache.org/dubbo-go/v3/imports"
-       "github.com/dubbogo/gost/log/logger"
 
        hessian "github.com/apache/dubbo-go-hessian2"
+
+       "github.com/dubbogo/gost/log/logger"
 )
 
 import (
diff --git a/tls/dubbo/go-server/pkg/wrapper_array_class_provider.go 
b/tls/dubbo/go-server/pkg/wrapper_array_class_provider.go
index 9d22ac97..f98b62bb 100644
--- a/tls/dubbo/go-server/pkg/wrapper_array_class_provider.go
+++ b/tls/dubbo/go-server/pkg/wrapper_array_class_provider.go
@@ -22,9 +22,9 @@ import (
 )
 
 import (
-       "github.com/dubbogo/gost/log/logger"
-
        hessian "github.com/apache/dubbo-go-hessian2"
+
+       "github.com/dubbogo/gost/log/logger"
 )
 
 type WrapperArrayClassProvider struct {
diff --git a/tls/triple/go-client/cmd/client.go 
b/tls/triple/go-client/cmd/client.go
index 09350474..c4fe29b7 100644
--- a/tls/triple/go-client/cmd/client.go
+++ b/tls/triple/go-client/cmd/client.go
@@ -24,6 +24,7 @@ import (
 import (
        "dubbo.apache.org/dubbo-go/v3/config"
        _ "dubbo.apache.org/dubbo-go/v3/imports"
+
        "github.com/dubbogo/gost/log/logger"
 )
 
diff --git a/tls/triple/go-server/cmd/server.go 
b/tls/triple/go-server/cmd/server.go
index 1096362f..155b3baa 100644
--- a/tls/triple/go-server/cmd/server.go
+++ b/tls/triple/go-server/cmd/server.go
@@ -24,6 +24,7 @@ import (
 import (
        "dubbo.apache.org/dubbo-go/v3/config"
        _ "dubbo.apache.org/dubbo-go/v3/imports"
+
        "github.com/dubbogo/gost/log/logger"
 )
 

Reply via email to