nacos

springboot-alibabacloud-nacos实战-

2020-11-28  本文已影响0人  前进的码农

下载安装

下载地址
https://github.com/alibaba/nacos/releases
解压后进入bin目录

sh startup.sh -m standalone

然后浏览器输入地址默认账号密码为nacos nacos
http://localhost:8848/

image.png

使用

概念介绍

nacos地图

image.png

命名空间

用于进行租户粒度的配置隔离。不同的命名空间下,可以存在相同的 Group 或 Data ID 的配置。Namespace 的常用场景之一是不同环境的配置的区分隔离,。\color{red}{例如开发测试环境和生产环境的资源(如配置、服务)隔离等}

组(group)

Nacos 中的一组配置集,是组织配置的维度之一。通过一个有意义的字符串(如 Buy 或 Trade )对配置集进行分组,从而区分 Data ID 相同的配置集。当您在 Nacos 上创建一个配置时,如果未填写配置分组的名称,则配置分组的名称默认采用 DEFAULT_GROUP 。配置分组的常见场景:不同的应用或组件使用了相同的配置类型,如 database_url 配置和 MQ_topic 配置。\color{red}{微服务中同一个项目不同的服务可以用同一个组,个人观点。}
这里只摘抄2个重要的概念更多概念请移步官方文档
https://nacos.io/zh-cn/docs/concepts.html

使用

引入依赖

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

简单使用

新建bootstrap.properties 配置文件来配置Nacos Server 地址

spring.cloud.nacos.config.server-addr=127.0.0.1:8848
spring.application.name=product-services

然后进入nacos后台新建配置,使用默认的组默认的命名空间

image.png
\color{red}{这里的DataID要和spring.application.name对应}

测试

@RestController
@RequestMapping("/product-services/product")
@Slf4j
@RefreshScope
public class ProductController {
    @Value("${user.name:123}")
    private String name;
    @Value("${user.pwd:123}")
    private String pwd;

    @GetMapping("user_value")
    public String getUserValue() {
        log.info("name:"+name+" pwd:"+pwd);
        return "name:"+name+" pwd:"+pwd;
    }
    }
image.png
自定义data-id请移步到第二篇教程:
springboot-alibabacloud-nacos实战-自定义名称-02
https://www.jianshu.com/p/dab0ec4e169b
上一篇下一篇

猜你喜欢

热点阅读