SpringCloud项目使用Nacos进行服务的注册

本文详细介绍了如何在Spring Cloud项目中使用Nacos作为服务注册中心,包括引入依赖、配置信息设置、bootstrap.yml配置、服务注册发现功能的开启和测试验证。通过Nacos进行服务管理和配置管理,确保服务能够成功注册到Nacos并被发现。
摘要由CSDN通过智能技术生成

本篇介绍Spring cloud项目使用Nacos作为注册中心来进行服务注册及服务发现,并进行简单的测试来验证。

一、简介

nacos是一个集服务发现、服务配置、服务元数据以及流量管理于一体的管理中心,能帮助我们更好的发现、配置和管理微服务

注意:如果之前使用eureka,需要将相关的依赖注释或删掉

二、引入依赖

创建SpringCloud项目,添加相关的依赖

<!--nacos 服务注册中心-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    <version>2021.1</version>
</dependency>
<!--nacos 配置中心-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    <version>2021.1</version>
</dependency>

注意:版本 2021.1 对应的是 Spring Boot 2.x 版本

我选择的是 springcloudalibaba springboot版本:

  • spring-cloud-alibaba-dependencies 2.2.1.RELEASE
  • spring-boot-starter-parent 2.4.6
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.4.6</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>nacos-demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>nacos-demo</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>11</java.version>
        <spring-cloud.version>2021.0.5</spring-cloud.version>
    
Spring Cloud 项目中,可以使用 Nacos进行服务注册和发现。以下是获取注册服务的步骤: 1. 首先,确保已经在项目的依赖中添加了 Nacos 相关的依赖项。例如,在 Maven 中可以添加以下依赖: ```xml <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> ``` 2. 在项目的配置文件(例如 application.properties 或 application.yml)中,配置 Nacos 的地址和服务信息。示例配置如下: ```yaml spring: cloud: nacos: discovery: server-addr: your-nacos-server-address ``` 3. 在需要获取注册服务的地方,可以使用 `DiscoveryClient` 类来获取服务列表。首先,通过 `@Autowired` 注解将 `DiscoveryClient` 注入到你的类中: ```java @Autowired private DiscoveryClient discoveryClient; ``` 4. 然后,使用 `discoveryClient.getInstances("service-name")` 方法来获取指定服务名称下的所有实例。例如: ```java List<ServiceInstance> instances = discoveryClient.getInstances("your-service-name"); ``` 5. 最后,你可以遍历 `instances` 列表来获取每个实例的相关信息,例如主机名、端口号等。 ```java for (ServiceInstance instance : instances) { String host = instance.getHost(); int port = instance.getPort(); // 其他操作... } ``` 通过以上步骤,你可以在 Spring Cloud 项目使用 Nacos 获取注册服务。希望能对你有所帮助!如果你还有其他问题,请随时提问。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值