–Nacos大家都知道,不懂的可以去官网或者网上查阅一下,本次给大家讲解一下如何在SpringBoot项目中引入Nacos服务来进行服务治理与发现,配置管理等,在微服务当中是必不可少的,各个模块之间可以通过Feign远程调用,无需指定具体地址就可以自动负载到对应的服务上,集群当中非常有用,接下来讲解一下具体实现步骤
官网地址:https://nacos.io/
一、 引入pom
<!--注册中心的依赖-->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId><version>2.2.9.RELEASE</version>
</dependency>
<!-- 配置中心的依赖 -->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId><version>2.2.9.RELEASE</version>
</dependency>
本次引入的是2.2.9版本,可使用nacos2.2.0服务
二、删除原有的配置文件,采用bootstrap.yml文件代替
server:port: 8080
spring:application:# 应用名称name: gatewaycloud:nacos:discovery:#账号密码username: nacospassword: nacos# 服务注册地址server-addr: 127.0.0.1:8848# 配置所属命名空间的idnamespace: publicconfig:#账号密码username: nacospassword: nacos# 配置中心地址server-addr: 127.0.0.1:8848# 配置所属命名空间的idnamespace: public# 配置文件格式file-extension: yml
将此内容保存至bootstrap.yml文件中,放到resources目录下即可,此配置主要是对服务进行一个注册,和读取nacos中的配置文件,至于为什么要废弃传统application.yml文件,这与springboot启动配置顺序有关
如下:
三、 启动类增加@EnableDiscoveryClient注解开启服务发现
@EnableDiscoveryClient
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class GatewayApplication {public static void main(String[] args) {SpringApplication.run(GatewayApplication.class, args);}
}
四、 安装nacos服务
因nacos服务版本与springboot版本有兼容关系,所以本次我们采用2.2.0版本,可在官网中下载,文章末尾也会附上网盘地址
官网下载地址:https://nacos.io/download/nacos-server/
Nacos服务依赖于jdk,所以在使用前请先安装jdk8版本,此处不做讲解
五、 创建nacos配置数据库
- 下载好后服务包,在conf目录下会附带mysql脚本,创建一个nacos_config库,将此脚本执行进去即可
- 使用文本打开application.properties文件,拖到最下层添加nacos库的配置
# 本地库nacos
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=123456
如下所示:
六、 启动nacos服务
-
首次启动是默认采用集群模式启动,我们需要修改一下启动模式,使用文本打开bin目录下的startup.cmd文件,搜索set
MODE,修改为如下所示(standalone):
-
保存退出
-双击启动startup.cmd:
七、 访问使用nacos
- 打开浏览器输入:http://127.0.0.1:8848/nacos 账号密码:nacos/nacos
- 此时还没有任何配置,我们创建一个gateway
服务启动时会通过服务名称从nacos中拉取配置进行载入,类型为yaml,Group可使用默认
八、 启动springboot服务
- 此时会在nacos服务中看到我们的springboot项目
- 之后的所有配置新增与修改均在nacos服务web页面上进行
- 其中有不少涉及到nacos概念知识,比如命名空间,分组,配置共享,启动顺序等,有兴趣的同学可通过网上查阅
本次教程到这里就结束了,希望大家多多关注支持(首席摸鱼师 微信同号),持续跟踪最新文章吧~