# nacos-learning **Repository Path**: haughty945/nacos-learning ## Basic Information - **Project Name**: nacos-learning - **Description**: nacos组件学习 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-01-13 - **Last Updated**: 2022-01-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # nacos-learn ` nacos组件学习 ` _Mine.Lee_ ` nacos-github ` _https://github.com/alibaba/nacos_ ### idea 单机模式启动nacos 0-0、需修改mysql做数据源(默认为CMDB) 0-0-1: 数据库DDL在nacos-distribution/conf/nacos-mysql.sql 0-0-2: 修改nacos-console模块下application.properties配置:添加mysql数据库的配置(只支持mysql) # mysql configuration spring.datasource.platform=mysql db.num=1 db.url.0=jdbc:mysql://176.122.189.97:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true db.user=root db.password=Root@696969 0-0-3: 修改启动配置: Edit configurations > configuration 展开 Environment 在 VM options 添加: -Dnacos.standalone=true -Dnacos.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution ### nacos 单机 2-1、Download nacos-server-*.tar.gz解压进入bin目录 执行以下命令启动单机模式: sh startup.sh -m -standalone 2-2、启动命令: java -jar -Dnacos.standalone=true ./nacos-server.jar nohup java -jar -Dnacos.standalone=true ./nacos-server.jar>/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution/logs/standalone.log & ### nacos 集群 1-0、Download nacos-server-*.tar.gz解压 `1-0-1: conf目录` 1-0-1-1: 数据库DDL在nacos-distribution/conf/nacos-mysql.sql 1-0-1-2: 修改application.properties配置:添加mysql数据库的配置(只支持mysql) # mysql configuration spring.datasource.platform=mysql db.num=1 db.url.0=jdbc:mysql://176.122.189.97:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true db.user=root db.password=Root@696969 1-0-1-3: 修改集群配置cluster.conf(如果没有就新建) #ip:port `1-0-2: bin目录` 1-0-2-1: 启动命令 sh ./startup.sh 1-1、执行 mvn clean package 生成./nacos-console/target/nacos-server.jar ; 启动命令可参考 ↓↓↓ nohup java -jar -Dserver.port=8881 -Dnacos.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution -Duser.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution ./nacos-server.jar>/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution/logs/cluster-8881.log & nohup java -jar -Dserver.port=8882 -Dnacos.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution -Duser.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution ./nacos-server.jar>/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution/logs/cluster-8882.log & nohup java -jar -Dserver.port=8883 -Dnacos.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution -Duser.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution ./nacos-server.jar>/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution/logs/cluster-8883.log & 1-2-1、启动命令说明: -Dnacos.home 指定集群模式配置文件所在文件夹:指定到conf/cluster.conf上级 ↓↓↓ /Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution cluster.conf 中配置如下:ip:port 192.168.0.102:8881 192.168.0.102:8882 192.168.0.102:8883 -Duser.home 指定服务链路日志存存放的位置,默认会放在User/当前用户下。指定以下方便查看 /Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution `8881 start and look log` nohup java -jar -Dserver.port=8881 -Dnacos.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution -Duser.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution ./nacos-server.jar>/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution/logs/cluster-8881.log & tail -f /Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution/logs/cluster-8881.log `8882 start and look log` nohup java -jar -Dserver.port=8882 -Dnacos.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution -Duser.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution ./nacos-server.jar>/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution/logs/cluster-8882.log & tail -f /Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution/logs/cluster-8882.log `8883 start and look log` nohup java -jar -Dserver.port=8883 -Dnacos.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution -Duser.home=/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution ./nacos-server.jar>/Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution/logs/cluster-8883.log & tail -f /Users/mac/dev/IdeaProjects/nacos-learning/nacos-server/nacos-distribution/logs/cluster-8883.log ### 支持的消费方式 1. Ribbon 具有负载机制的resttemplate 2. WebClient 方式 也就是一种非阻塞型的restTemplate 3. feign .... ribbon 的高级封装 ### nacos作为配置中心 DataID : ${pring.cloud.nacos.config.prefix}.${spring.cloud.nacos.config.file-extension} spring.cloud.nacos.config.prefix 缺省值为${spring.application.name} spring.cloud.nacos.config.file-extension 缺省值为properties Group : ${spring.cloud.nacos.config.group},缺省值为DEFAULT_GROUP NameSpace : namespace: 读取public的值.新建namespace执行的是id而不是name 不论用哪一种方式实现。对于指定环境的配置 spring.profiles.active=DEV、 spring.cloud.nacos.config.group=DEV_GROUP、 spring.cloud.nacos.config.namespace=83eed625-d166-4619-b923-93df2088883a), 都不要配置在应用的bootstrap.properties中。而是在发布脚本的启动命令中, 用 -Dspring.profiles.active=DEV的方式来动态指定,会更加灵活! http://blog.didispace.com/spring-cloud-alibaba-nacos-config-3/