(1)nacos的主要功能:
                    (1)服务发现和服务健康检测
                    (2)动态配置服务
                    (3)动态DNS服务
                    (4)服务及元数据管理
(2)拉取源代码进行启动:https://github.com/alibaba/nacos  这个是nacos的管理页面   默认登录名:nacos    密码:nacos
                        下载下来直接启动,就是配置管理中心

(3)测试项目: https://github.com/nacos-group/nacos-examples/blob/master/nacos-spring-boot-example   这是一个demo,里面有相应的配置管理

使用方式:
        (1)下载下来nacos-service的zip,解压之后,进去bin文件夹里面启动startup.cmd
        (2)访问页面:localhost:8848/nacos/index.html   登录名和密码都是:nacos
        (3)添加配置项,在列表最右边有个加号,Data Id就相当于springcloud的配置文件的文件名
        
有两种方式:一种是springboot的,这种好像现在没有分布式的。就是简单的配置一下,然后获取内容,springboot项目也可以直接使用springcloud的包,直接搞成分布式。
         

spring boot的jar:<dependency>
                                 <groupId>com.alibaba.boot</groupId>
                                 <artifactId>nacos-config-spring-boot-starter</artifactId>
                                 <version>0.2.1</version>
                             </dependency>                            <dependency>
                                 <groupId>com.alibaba.boot</groupId>
                                 <artifactId>nacos-discovery-spring-boot-starter</artifactId>
                                 <version>0.2.1</version>
                             </dependency>


                            
                            配置文件里面添加:nacos.config.server-addr=127.0.0.1:8848
                                              nacos.discovery.server-addr=127.0.0.1:8848    这个是发现配置项的,但是要先提交信息才能发现。
                                              提交的方式:PUT  http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=bamboo.test&ip=127.0.0.1&port=8081
                                              获取的方式,就是写一个路径查询Data Id等于bamboo.test的instance,暂时没发现有啥作用。

@RequestMapping("/get")
                                                 @ResponseBody
                                                 public List<Instance> get(@RequestParam String serviceName) throws NacosException {
                                                     List<Instance> list =  namingService.getAllInstances(serviceName);
                                                     return list;
                                                 }


                            在项目启动的地方添加@NacosPropertySource(dataId = "bamboo.test",autoRefreshed = true)     bamboo.test就是Data Id
                            然后获取配置信息:@Value("${配置项名称}")
                                              private String xxx;
                                              
            第二种方式,就是springcloud这种方式,分布式的,而且可以配置多环境,可以代替springcloud自带的config
            springcloud的jar:        
                        

<dependency>
                                 <groupId>com.alibaba.cloud</groupId>
                                 <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
                                 <version>2.1.0.RELEASE</version>
                             </dependency>
                             <dependency>
                                 <groupId>com.alibaba.cloud</groupId>
                                 <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
                                 <version>2.1.0.RELEASE</version>
                             </dependency>


                            
                            配置文件里面添加:spring.cloud.nacos.config.server-addr=127.0.0.1:8848
                                              spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
                                              
                            分布式是因为可以把nacos项目添加到eureka-service里面,同个项目里面不同环境配置文件做区分,就是靠Data Id的名字做区分的。
                            跟springcloud的config配置相似。
                            结构:${prefix}-${spring.profile.active}.${file-extension}
                            第一个参数prefix就是项目的spring.application.name
                            第二个参数spring.profile.active就是项目的环境名称,dev或者online,test
                            第三个参数file-extension,就是文件后缀  yml,properties   默认是properties。
                            若nacos里面的配置文件是yml结尾的话,则需要在配置文件里面添加:spring.cloud.nacos.config.file-extension=yml
            
                            这个的使用方式就比较简单,只需要在对用的使用的地方加上@RefreshScope注解,表示可以实时刷新,项目会自动去读取与名字相对应的配置文件。
                            
                            
若是还是不懂,看官网,英文版的,人都是被逼出来的。    记得把百度翻译打开。        
            
总结:nacos比config要简单一点,最主要的就是没有使用到rabbitmq来推送实时更新。而且还有可视化界面。你