注册发现

最近更新时间:2024-01-25 16:42:12

我的收藏

操作场景

本文介绍在本地开发 Java 应用,通过 Spring Cloud 的方式接入 TSE 治理中心(北极星网格),并实现服务注册与发现。

前提条件

1. 在开始开发前,请确保您已经参见 下载 Maven下载安装了 Java 和 Maven。
2. 已创建 TSE 治理中心(北极星网格)实例,操作步骤详细参见 引擎管理

操作步骤

为了方便您快速接入,我们为您准备了 Demo 应用,点击下载

步骤1:引入服务注册与发现的依赖

1. 引入 spring cloud tencent 依赖

修改应用根目录下的 pom.xml,添加dependencyManagement
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.tencent.cloud</groupId>
<artifactId>spring-cloud-tencent-dependencies</artifactId>
<version>${version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
注意:
请根据项目 Spring Boot 和 Spring Framework 的版本,选择合适的 Spring Cloud Tencent 版本

2. 引入 spring cloud tencent starter

方式一:只引入spring-cloud-starter-tencent-polaris-discovery
<dependency>
<groupId>com.tencent.cloud</groupId>
<artifactId>spring-cloud-starter-tencent-polaris-discovery</artifactId>
</dependency>
方式二:通过spring-cloud-starter-tencent-all引入 SCT 所有 starters。
<dependency>
<groupId>com.tencent.cloud</groupId>
<artifactId>spring-cloud-starter-tencent-all</artifactId>
<!-- 注意需要指定 type=pom-->
<type>pom</type>
</dependency>
如果使用 Spring Cloud 2020 及以后版本,还需要添加如下依赖:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-bootstrap</artifactId>
</dependency>

步骤2:添加北极星配置文件

1. 在项目的 main/resources 目录下创建 bootstrap.yml 文件。
2. 在 bootstrap.yml 文件中配置应用名、polaris(北极星)服务端地址等信息。服务端地址查看详细参见:引擎管理 > 客户端访问地址
spring:
application:
name: ${application.name}
cloud:
polaris:
address: grpc://${修改为Polaris 服务地址}:8091
namespace: default

步骤3:启动应用

应用成功启动后,到 TSE 控制台 查看服务注册信息。如下图所示:

image



步骤4: 服务调用

在 Spring Cloud 中可通过RestTemplate或者Feign发起服务调用。
RestTemplate
只需要在实例化RestTemplate的地方加上@LoadBalanced注解即可。
@Bean
@LoadBalanced
public RestTemplate restTemplate() {
return new RestTemplate();
}
Feign
通过 Feign 框架调用,按照标准的 Feign 方式即可。