一.nacos概述
nacos官网
二.Windows使用搭建nacos
较为完整使用参考
1.安装nacos
去nacos github下载nacos最新稳定版本,我用的是nacos-server-2.2.3.zip,下载后解压,得到
2.创建数据库
启动mysql,创建数据库nacos,数据库名字是从conf/application.properties文件获得的
把db这三行取消注释,修改为自己mysql的账号密码
在mysql管理工具对nacos数据库运行conf/mysql-schema.sql文件,刷新后可以看到表已经有了
3.修改鉴权配置
打开conf/application.properties文件,根据nacos权限认证文档修改以下配置项
nacos.core.auth.enabled=true
nacos.core.auth.server.identity.key=serverIdentity
nacos.core.auth.server.identity.value=security
nacos.core.auth.plugin.nacos.token.secret.key=VGhpc0lzTXlDdXN0b21TZWNyZXRLZXkwMTIzNDU2Nzg=
在下载的压缩包中,以上这几项默认为空,不设置则不会提示权限之类的信息,也不需要用户名和密码登录
4.启动nacos
cmd进入bin目录
执行以下命令,表示以单机模式运行nacos
startup.cmd -m standalone
看到成功启动即可
5.访问nacos
浏览器访问http://localhost:8848/nacos即可看到登录页面
账号密码都是nacos
6.关闭nacos
cmd进入bin目录执行,或者双击shutdown.cmd也可以
shutdown.cmd
三.springCloud服务注册中心
Nocas实战入门-参考
1.maven.pom依赖,若依赖导入报红时,可先在本地仓库中,清除未完成下载的依赖包,然后再重新导入试一下。
<!-- Nocas的管理依赖 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-dependencies</artifactId>
<version>2.2.5.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- Nocas客户端依赖包 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.2.5.RELEASE</version>
</dependency>
如果是多台服务,消费者则需要使用负载均衡依赖
<!-- ribbon负载均衡 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
<version>2.0.1.RELEASE</version>
</dependency>
这里spring-cloud-starter-alibaba-nacos-discovery中已经集成了负载均衡,所以不需要引入
我这里使用的脚本文件cleanLastUpdated.bat,运行即可
cleanLastUpdated.bat
set REPOSITORY_PATH=D:\JDBC-Bao\apache-maven-3.6.1\conf\.m2\repositoty
rem 正在搜索...
for /f "delims=" %%i in ('dir /b /s "%REPOSITORY_PATH%\*lastUpdated*"') do (
del /s /q %%i
)
rem 搜索完毕
pause
2.application.yml
spring:
application:
name: user-servicr
cloud:
nacos:
discovery:
username: nacos
password: nacos
#nocas服务地址
serverAddr: localhost:8848
enabled: true
server:
port: 9004
3.UserController,提供一个可调用的方法
4.启动服务,完成服务注册
启动完成之后,在nacos中就能够看得到user-service服务了,实例数是指,您启动的服务个数
在服务列表点,订阅者按钮
5.调用的user-service服务,使用RestTemplate,单个
调用单个时,可直接使用完整url:http://127.0.0.1:9002/user/list
如果想要调用多服务时,则需使用负载