1. 说明

discovery意为发现,也就是我们的服务注册,这和spring-cloud的思想保持一致,spring-cloud-alibaba和spring-cloud-netflix均是相同的实现

2. 项目搭建

2.1. pom

1
2
3
4
5
6
7
8
9
10
<dependencies>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>

注意这里引入时<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>对应的有<groupId>com.alibaba.cloud</groupId><groupId>org.springframework.cloud</groupId>,引用时要引用<groupId>com.alibaba.cloud</groupId>

2.2. application.properties

配置文件这里和config类似,这里可以在application.properties中配置,无需在bootstrap中配置

1
2
3
spring.application.name=cloud-provider
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
spring.cloud.nacos.discovery.namespace=spring-cloud-alibaba-center-id

2.3. 启动类

除了springboot自带的,还需要加上@EnableDiscoveryClient开启服务注册发现

1
2
3
4
5
6
7
@SpringBootApplication
@EnableDiscoveryClient
public class CloudSampleProviderApp {
public static void main(String[] args) {
ConfigurableApplicationContext run = SpringApplication.run(CloudSampleProviderApp.class, args);
}
}

2.4. nacos 配置

无需nacos配置

2.5. 启动

启动服务后,到nacos中服务里查询

nacos中注册的服务

nacos

数据库仍未看到,肯定不在数据库中

这样,nacos的服务注册服务就搭建好了,其实搭建的此服务就是一个实例了, 后续增加实例如应用的provider和consumer就按照此加入即可