1)先下载Nacos,解压之后启动。解压之后的目录如下:
2) 注意有的版本默认是集群启动,可以修改启动脚本。如下:
3)也可以使用bin目录下命令行启动:
startup.cmd -m standalone
4)启动的端口号可以在conf目录下的application.properties中修改,默认8848
5)启动成功后如下:
6)访问启动的nacos服务,url:http://localhost:8848/nacos/index.html
用户名和命名初始都是 nacos
启动成功。
7)修改密码可以按照如下步骤:(可跳过)
a.文本编辑器打开nacos目录conf下的nacos-mysql.sql,在最后找到
b.可以修改username,password。为自己的账号密码。但是密码是经过加密的。
INSERT INTO users (username, password, enabled) VALUES ('nacos', '$2a$10$EuWPZHzz32dJN7jexM34MOeYirDdFAZm2kuWj7VEOJhhZkDrxfvUu', TRUE);
c.数据采用的是BCrypt加密 我们可以找一个网站输入自定义密码 然后加密 把加密后的密码存到数据库中。
1.Bcrypt密码在线生成计算器 Bcrypt密码在线生成计算器 ab126软件园
2.Bcrypt密码生成计算器 - 计算专家
d.修改完保存,重启nacos即可。
使用的是application.yml配置文件:
代码如下:
spring: cloud: nacos: server-addr: 127.0.0.1:8848
com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-discovery
成功。
若服务中引入了nacos的配置中心依赖,则要配置bootstrap.yml或bootstrap.properties文件,
配置nacos的配置中心依赖,和服务的服务名。
因为bootstrap文件是先于其他配置文件加载的,所以引入了nacos配置中心的依赖,则要配置bootstrap文件。
如果要使用nacos配置中心的配置,则要在配置中心中的配置管理新建配置,配置的DataId默认和服务名一致,具体可查看服务启动时的日志信息
在使用配置中的信息时,配合
@value("${ key }")
@RefreshScope //开启热更新 (nacos中配置刷新)
@RefreshScope 要在使用@value的类的上面使用
注解在类中使用。
com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-config
nacos的注册中心的使用。
nacos和eureka的范围不同,Nacos的阈值是针对某个具体Service的,而不是针对所有服务的;但Eureka的自我保护阈值是针对所有服务的。nacos支持CP和AP两种;eureka只支持AP。nacos使用netty,是长连接;eureka是短连接,定时发送。
Eureka保护方式:当在短时间内,统计续约失败的比例,如果达到一定阈值,则会触发自我保护的机制,在该机制下,Eureka Server不会剔除任何的微服务,等到正常后,再退出自我保护机制。自我保护开关(eureka.server.enable-self-preservation: false)
Nacos保护方式:当域名健康实例 (Instance) 占总服务实例(Instance) 的比例小于阈值时,无论实例 (Instance) 是否健康,都会将这个实例 (Instance) 返回给客户端。这样做虽然损失了一部分流量,但是保证了集群的剩余健康实例 (Instance) 能正常工作。