栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

什么是Nacos?

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

什么是Nacos?

Nacos是阿里的一个开源产品,是针对微服务架构中的服务发现、配置管理、服务治理的综合型解决方案。(用来实现配置中心和服务注册中心)

官网:https://nacos.io/zh-cn/docs/what-is-nacos.html

1.Nacos简介

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

2.Nacos注册中心的使用

 2.1将微服务注册到Nacos

① 首先需要搭建Nacos环境、安装nacos(路径栏中不能有汉字)

下载地址: https://github.com/alibaba/nacos/releases
下载zip格式的安装包,然后进行解压缩操作

②启动nacos

我们要启动Nacos时必须保证当前系统配置了java环境变量

简单来说就是要环境变量中,有JAVA_HOME的配置,指向安装jdk的路径

#命令启动

    startup.cmd -m standalone

③访问nacos

打开浏览器输入http://localhost:8848/nacos,即可访问服务, 默认密码是nacos/nacos

 

2.2接下来将微服务注册到Nacos中

接下来开始修改 shop-product 模块的代码, 将其注册到nacos服务上

① 在pom.xml中添加nacos的依赖


      com.alibaba.cloud
      spring-cloud-starter-alibaba-nacos-discovery

②在主启动类上添加nacos的开启注解

@SpringBootApplication
@EnableDiscoveryClient//开启nacos注解
 
@MapperScan(basePackages = "com.cyy.product.mapper")
public class ProductApplication {
    public static void main(String[] args) {
        SpringApplication.run(ProductApplication.class,args);
    }
}

③在application.propreties添加nacos的配置

#配置nacos注册中心的地址
spring.cloud.nacos.server-addr=localhost:8848

④启动服务,观察nacos的控制面板中是否有注册上来的商品微服务

 3.Nacos配置中心的使用

微服务中配置中心的主流解决方案主要有三种:Nacos、Apollo、Config+Bus,不过这篇文章我们主要介绍 Nacos 作为配置中心的用法,对其他两种方式感兴趣的读者请自行上网查阅

①首先我们声明项目的版本信息:


    2.3.2.RELEASE
    Hoxton.SR9
    2.2.6.RELEASE

 


    
        
        
            org.springframework.boot
            spring-boot-dependencies
            ${spring-boot.version}
            pom
            import
        
        
        
            org.springframework.cloud
            spring-cloud-dependencies
            ${spring-cloud.version}
            pom
            import
        
        
        
            com.alibaba.cloud
            spring-cloud-alibaba-dependencies
            ${spring-cloud-alibaba.version}
            pom
            import
        
    

②添加 nacos 配置中心的 maven 依赖:



    com.alibaba.cloud
    spring-cloud-starter-alibaba-nacos-config

③在 application.properties 文件中添加 nacos 配置中心相关配置:

spring.profiles.active=dev
spring.application.name=cloud-producer-server
server.port=8080
 
# nacos 配置中心地址
spring.cloud.nacos.config.server-addr=localhost:8848
# 配置文件的类型
spring.cloud.nacos.config.file-extension=yaml

④在 nacos 控制台新建一个 DataID 为 cloud-producer-server-dev.yaml 的配置集:

⑤编写测试类:

//配置发布之后,动态刷新配置
@RefreshScope
@RestController
@RequestMapping("provider")
public class ProviderController
{
    // 使用原生注解@Value()导入配置
    @Value("${user.id}")
    private String id;
    @Value("${user.name}")
    private String name;
    @Value("${user.age}")
    private String age;
 
    @GetMapping("getNacosConfig")
    public String providerTest()
    {
        return "我是provider,已成功获取nacos配置中心的数据:(id:" + id + ",name:" + name + ",age:" + age +")";
    }
}

⑥启动服务验证:

启动项目可以看到 nacos 配置中心的配置信息已经生效并被成功获取到了

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1024351.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号