SpringCloudAlibaba--Nacos
nacos
1,nacos学习
2,游学网项目使用(项目以springcloudAlibaba为例)
2.1,服务注册发现
使用nacos实现服务注册发现,根据官网使用nacos实现服务注册发现步骤如下:
-
github下载nacos 解压开箱即用;
-
项目添加依赖:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>${latest.version}</version>
</dependency>
注意:版本 2.1.x.RELEASE 对应的是 Spring Boot 2.1.x 版本。版本 2.0.x.RELEASE 对应的是 Spring Boot 2.0.x 版本,版本 1.5.x.RELEASE 对应的是 Spring Boot 1.5.x 版本。
游学网使用 : 本项目直接引入spring-cloud-alibaba-dependencies,使用:
<!-- 服务注册/发现-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- 使用依赖管理统一管理version-->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.1.0.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
- 配置服务提供者,从而服务提供者可以通过 Nacos 的服务注册发现功能将其服务注册到 Nacos server 上。
spring.application.name=st-number //注册中心名称
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848// 上文1中下载开箱即用启动nacos的地址,用于发现&注册服务(提供者注册,消费者发现)
- 通过 Spring Cloud 原生注解 @EnableDiscoveryClient 开启服务注册发现功能:
//开启服务的注册发现
@EnableDiscoveryClient
@SpringBootApplication
public class MemberApplication {
public static void main(String[] args) {
SpringApplication.run(MemberApplication.class, args);
}
}
- 先启动nacos,再启动项目,后刷新nacos服务发现列表
本地启动nacos,访问http://localhost:8848/nacos,用户名,密码均为nacos登录
2.2,配置中心
- 项目添加依赖:
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
- 新建配置文件bootstrap.properties
在 bootstrap.properties 中配置 Nacos server 的地址和应用名
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
spring.application.name=st-member
- 在nacos配置中心添加数据集为: 应用名.properties
- 在读取配置的类上加:通过 Spring Cloud 原生注解 @RefreshScope 实现配置自动更新
- 通过@Value(${配置名}),即可获取到配置