先看目录中遇到过的问题再看文章
目录
官网地址
快速简介
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
- 通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-config 实现配置的动态变更。
- 通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-discovery 实现服务的注册与发现。
前提准备
您需要先下载 Nacos 并启动 Nacos server。步骤如下:注本文用的服务器是Centos7
下载源码
https://github.com/alibaba/nacos/releases/tag/2.0.4,打开链接拉到最下边下载源码,图中的版本是本篇文章目前最新的
上传解压
上传到服务器目录/usr/local/,解压到当前目录
解压命令:unzip nacos-server-2.0.4.zip
启动服务
进入nacos目录下的bin目录,命令:cd /nacos/bin
centos启动命令(standalone代表着单机模式运行,非集群模式):
sh startup.sh -m standalone如果您使用的是ubuntu系统,或者运行脚本报错提示[[符号找不到,可尝试如下运行:
bash startup.sh -m standalonewindows启动命令(standalone代表着单机模式运行,非集群模式):
startup.cmd -m standalone我是centos7系统用的是第一句命令,执行完如下,提示去/usr/local/nacos/logs/start.out查看日志
找到start.out日志文件,看下内容,日志如下则启动成功
访问地址
http://IP地址:8848/nacos,8848是默认的端口,默认的账号密码是nacos/nacos
关闭服务
linux关闭命令
sh shutdown.sh
Windows关闭命令
bin目录下双击shutdown.cmd
项目实战
注意事项
此文章是接着上一篇文章继续的,上篇文章地址如下
添加nacos-config依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>2.2.7.RELEASE</version>
</dependency>添加nacos-discovery依赖
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.2.7.RELEASE</version>
</dependency>Config配置文件
修改配置文件名称:application.properties改为bootstrap.properties,bootstrap先于application被加载,用于读取远程配置文件,所以改为bootstrap.properties。
配置文件和nacos配置连接语法:
${prefix}-${spring.profiles.active}.${file-extension}
prefix默认为spring.application.name的值,也可以通过配置项spring.cloud.nacos.config.prefix来配置。spring.profiles.active即为当前环境对应的 profile, 注意:当spring.profiles.active为空时,对应的连接符-也将不存在,dataId 的拼接格式变成${prefix}.${file-extension}file-exetension为配置内容的数据格式,可以通过配置项spring.cloud.nacos.config.file-extension来配置。目前只支持properties和yaml类型。在配置文件中配置nacos地址和应用名
#Nacos Server地址 spring.cloud.nacos.config.server-addr=127.0.0.1:8848 #Nacos Server后缀 spring.cloud.nacos.config.file-extension=yaml #Nacos Server应用名 spring.cloud.nacos.config.prefix=user
Nacos-Config配置
点击右侧加号,新增配置
写好配置保存就可以了,我的配置如下
nacos-config就配置完成。剩下的配置可按照自己的需求添加
discovery配置文件
添加服务发现注册地址和服务名称
通过 Spring Cloud 原生注解@EnableDiscoveryClient开启服务注册发现功能启动类上添加注解
@EnableDiscoveryClient
启动项目即可
nacos-discovery配置列表查看,出现如下图即为成功
整体配置文件
#Nacos-Config Server地址
spring.cloud.nacos.config.server-addr=ip:8848
#Nacos-discovery Server地址
spring.cloud.nacos.discovery.server-addr=ip:8848
#Nacos Server后缀
spring.cloud.nacos.config.file-extension=yaml
#Nacos Server应用名
spring.cloud.nacos.config.prefix=user
#服务名
spring.application.name=user美食模块和用户模块一样的配置即可,服务名和配置文件中的prefix不要一致,我写的是food
遇到过的问题
1.版本冲突的问题,springboot版本2.6.2,springcloudalibaba版本2.2.7.RELEASE
解决方法:修改springboot版本为2.3.12.RELEASE即可,其他版本参照官网,官网给出了每个版本对应的方案https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E
https://github.com/alibaba/spring-cloud-alibaba/wiki/%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E
启动报错,摘取了部分日志。
Failed to introspect Class [org.springframework.cloud.context.properties.ConfigurationPropertiesBeans] from ClassLoader [sun.misc.Launcher$AppClassLoader@18b4aac2]
2.nacos客户端版本过高的问题,使用的是2.0.4的客户端,注册发现没有配置就启动,也报错如下
版本解决方法,停止nacos运行,下载nacos2.0.3的版本,其他版本参照官网,官网给出了每个版本对应的方案。
配置解决方法,配置注册与发现,或者注释掉注册发现的依赖
启动报错,摘取了部分日志。
com.alibaba.nacos.api.exception.NacosException: Request nacos server failed:
Caused by: com.alibaba.nacos.api.exception.NacosException: Client not connected,current status:STARTING
新年快乐,新年第一篇文章









nacos-config就配置完成。剩下的配置可按照自己的需求添加



