nacos 学习笔记入门

nacos

参考

DIDI的系列,简单入门有demo
https://www.jianshu.com/p/9c98eb1088a3

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

多环境的配置(namespace 区分DEV 、UAT 、 Test, group区分业务)
http://blog.didispace.com/spring-cloud-alibaba-nacos-config-2/

springcloud 阿里巴巴 maven 版本控制
http://blog.didispace.com/spring-cloud-alibaba-version/

启动nacos

  1. 本地安装和运行nacos

后台控制台:
http://localhost:8848/nacos/index.html
默认账号密码 nacos / nacos

nacos的优势

  1. 既有 配置中心 又有 注册中心,而且可以直接写在 application.properties 里面,不需要单独写个 bootstrap.properties 。

  2. 配置中心

  • 支持控制台界面(http://localhost:8848/nacos/index.html) 支持登陆功能管理权限
  • 支持动态配置(可以通过在类上添加 @RefreshScope注解),默认不会热加载
  • 支持url API动态配置(类似于 solr),也支持 控制台修改
  • 支持历史版本查询的功能,类似于 git 仓库的功能
  • 配置中心功能可以用在简单的springboot项目中,实现自动热加载的功能,不需要重启应用。还有历史版本查询的功能。缺点也很明显,就是除了维护当前应用,没有展现出配置中心的优势
  1. 注册中心
    作为注册中心 和eureka一样,都不需要改啥代码,迁移的成本很低,几乎没啥学习成本
    consumer配置
    
        org.springframework.boot
        spring-boot-starter-parent
        2.0.6.RELEASE
         
    
    
        
            org.springframework.cloud
            spring-cloud-starter-alibaba-nacos-discovery
            0.2.0.RELEASE
        

        
            org.springframework.cloud
            spring-cloud-starter-openfeign
        
        
    server.port=8072
    spring.application.name=service-consumer
    spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848

    @SpringBootApplication
    @EnableDiscoveryClient
    @EnableFeignClients
    public class DemoNacosApplication {
        public static void main(String[] args) {
            SpringApplication.run(DemoNacosApplication.class, args);
        }
    }

    @FeignClient("service-provider")
    public interface ClientRemote{
        @GetMapping(value="/echo/{str}")
        String hello(@PathVariable("str") String str);
    }

dataId (例如 demo-ssm.properties)
{spring.profile.active}.${file-extension}

支持API url,新的会覆盖老的配置
curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=demo-ssm.properties&group=DEFAULT_GROUP&content=useLocalCache=true"
curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=example.properties&group=DEFAULT_GROUP&content=useLocalCache=false"

curl -X PUT "http://127.0.0.1:8848/nacos/v1/ns/operator/switches?entry=pushEnabled&value=false&debug=false"

curl -X GET "http://127.0.0.1:8848/nacos/v1/ns/operator/switches"

localhost:8080/config/get

缺点

  1. 文档和社区太少了,碰到问题都搜不到解决方案,官网的文档都没那么全。 比如关闭 nacos的API功能,提升安全。这个最为致命

  2. 和SpringCloud的版本兼容性很差,比如 0.2.0Release版本 和 2.0.6版本SB兼容性很好,但是 和2.1.5版本SB,既不报错,也不成功急死人啊。

        
            org.springframework.cloud
            spring-cloud-starter-alibaba-nacos-discovery
            0.2.0.RELEASE
        

    
        org.springframework.boot
        spring-boot-starter-parent
        2.0.6.RELEASE
         
    

你可能感兴趣的:(nacos 学习笔记入门)