当前位置:   article > 正文

SpringCloud集成Nacos_spring cloud集成nacos

spring cloud集成nacos

下载Nacos

下载地址 这里以2.0.4版本为例,注意早先有些版本不支持Java11

安装使用

常用命令

# 本例安装在linux中

# 解压命令
tar -zxvf nacos-server-2.0.4.tar.gz

# 单节点启动
./startup.sh -m standalone

# 关闭服务
./shutdown.sh

# 访问路径
http://ip:8848/nacos
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

基本配置

若要修改Nacos的一些配置,如端口号等,可修改[安装目录]/conf/application.properties文件,例如我的安装目录为/opt/wong/nacos/,则修改/opt/wong/nacos/conf/application.properties文件中的server.port=9088,将默认端口由8848修改为9088。

SpringCloud集成注册中心

  • 注意事项

    微服务项目中集成Nacos,需要注意SpringCloud Alibaba 与 SpringCloud 的版本对应关系。

​ 本例版本关系如下:

<!-- SpringCloud Alibaba 版本 2.2.6.RELEASE -->
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2.2.6.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<!-- SpringBoot 版本 2.5.8 -->
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.5.8</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

<!-- SpringCloud 版本 2020.0.5 -->
<properties>
    <java.version>11</java.version>
    <spring-cloud.version>2020.0.5</spring-cloud.version>
</properties>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 导入nacos需要的包

    由于导入了SpringCloud Alibaba,这里可以不用写版本号

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
  • 1
  • 2
  • 3
  • 4
  • 启动类中添加注解
@SpringBootApplication
@EnableDiscoveryClient	// 开启服务注册与发现
public class DemoApplication {
    public static void main(String[] args) {
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • yml 配置
spring:
  application:
    name: demo
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:9088
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 查看注册结果

    访问本地nacos地址http://localhost:9088/nacos

    默认用户:nacos

    默认密码:nacos

SpringCloud集成配置中心

  • 添加依赖
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
  • 1
  • 2
  • 3
  • 4
  • 配置文件
# 在与application.yml同级目录中创建bootstrap.yml文件
# 在bootstrap.yml文件中编写如下配置
spring:
  application:
    name: demo
  cloud:
    nacos:
      config:
        server-addr: 127.0.0.1:9088
        file-extension: yml
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

注意

  • springboot 2.4 以上取消了bootstrap.yml的优先级

  • 若想使用bootstrap.yml配置,需添加如下依赖

    <dependency>
    	<groupId>org.springframework.cloud</groupId>
    	<artifactId>spring-cloud-starter-bootstrap</artifactId>
    	<version>3.1.0</version>
    </dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5

Nacos配置中心

  • 创建一个配置(注意Data Id 为完整文件名 xxx.yml)

    文件名与bootstrap.ymlname相同,文件格式与file-extension定义相同
    在这里插入图片描述

  • 编写配置内容
    在这里插入图片描述

  • 编辑完成后点击页面右下角发布按钮

Java中获取配置

  • 创建一个测试接收配置的类
@Getter
@Setter
@RefreshScope // 实时刷新,只有添加了该注解,配置中心修改时,才会实时获取配置
@Component
public class TestConfig {
    @Value("${demo.test}")
    private String test;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/414753
推荐阅读
相关标签
  

闽ICP备14008679号