• 文档
  • 控制台
  • 登录
  • 立即注册
    目前不支持用户自主注册,如需注册账号,请联系400-080-1100
微服务平台CSP开发指南
最近更新时间:

7 在 CSP 上使用网格注册中心同步功能

前提

 开通 CSP 平台服务。

 容器集群已开启网格。

 容器集群已部署 Spring Cloud 或 Dubbo 应用。 

开启注册中心同步

(1) 登录 CSP 平台。

(2) 在“资源管理 > 容器集群管理”页面,开启相应容器集群的注册中心同步功能。

1.png

(3) 开启同步注册中心服务,获取到在 test 命名空间下 testgp 组中注册的 demo-provide 服务。

同步过来的服务与注册中心注册的健康的服务一一对应,由于 Dubbo 的 consumer 服务不能被调用,同步过来的服务没有意义,所以后台已将其过滤。

1.png

(4) 创建网格 Demo 应用。

编程语言不限,只要可以将外部服务地址注入进来即可。

以下为使用环境变量注入服务地址的 java 示例代码:

package com.example.greeting.controller;




import okhttp3.OkHttpClient;


import okhttp3.Request;


import okhttp3.Response;


import org.springframework.http.MediaType;


import org.springframework.web.bind.annotation.GetMapping;


import org.springframework.web.bind.annotation.RequestMapping;


import org.springframework.web.bind.annotation.RestController;




@RestController


@RequestMapping(value = "/")


public class Greeting {


        @GetMapping(value = "/greeting", produces = MediaType.APPLICATION_JSON_VALUE)

       

        public String getCluster() {

                String result = null;


                String provider = System.getenv().getOrDefault("PROVIDER", "localhost");


                String url = String.format("http://%s/echo/hello", provider);


                System.out.println("request to :" + url);


                OkHttpClient client = new OkHttpClient();


                Request request = new Request.Builder().url(url).build();


                try {


                Response response = client.newCall(request).execute();


                result = response.body().string();


        } catch (Exception e) {


                System.out.println(e.getMessage());


        }


        String res = String.format("Greeting to %s, get answer:%s", url, result);


        return res;


        }


}

(5) 部署网格 Demo 应用时,添加环境变量 PROVIDER 的值为同步过来的 demo-provide 服务的host+port。

1.png

(6) 访问网格应用

2.png

意见反馈

文档内容是否对您有帮助?

如您有其他疑问,您也可以通过在线客服来与我们联系探讨 在线客服

联系我们
回到顶部