微服务Eureka转为nacos
·
(1)首先到nacos官网下载安装包:
https://nacos.io/download/nacos-server/?spm=5238cd80.72a042d5.0.0.5bc0cd36xAvyuu
(2)解压安装包,进入conf文件夹,找到mysql-schema.sql文件,该文件是数据库建表语句,创建一个数据库,执行该文件,
(3)在conf文件夹中,找到application.properties文件,修改数据库连接相关配置信息;
(4)进入bin文件夹,执行启动脚本:
sh startup.sh -m standalone
(5)启动之后,进入nacos管理页面,登陆地址:http://IP:8848/nacos, 账号:nacos,默认密码:nacos;
(6)到此,部署完成。
(1)登陆nacos,创建命名空间,命名空间是用来隔离环境使用,比如dev、test、prod等环境;
(2)将启动类上的@EnableEurekaClient注解去掉
(3)pom文件中,将Eureka引入的包注释掉,引入nacos的包
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.2.6.RELEASE</version>
</dependency>
(4)创建bootstrap.yml相关的配置文件

(5)配置信息
spring:
cloud:
nacos:
discovery:
server-addr: IP:8848 -- nacos地址
namespace: test -- 命名空间ID
username: nacos -- nacos的登录账号
password: nacos -- nacos的登录密码
(6)到此完成
(1)引入配置中心相关包
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
<version>2.2.6.RELEASE</version>
</dependency>
(2)增加配置中心配置
spring:
cloud:
nacos:
discovery: -- 注册中心配置
server-addr: IP:8848 -- nacos地址
namespace: test -- 命名空间ID
config: -- 配置中心配置
server-addr: IP:8848 -- nacos地址
namespace: test -- 命名空间ID
file-extension: yaml -- 配置文件类型
username: nacos -- nacos的登录账号
password: nacos -- nacos的登录密码
(3)在nacos管理页面增加配置信息,比如项目名称为demo,则在配置中心-》配置列表,选择相应的命名空间,新增配置,在新增配置页面dataId 设置为demo,格式为yaml,则将除nacos的配置,就可全部移动到nacos配置中心中维护,如下图:

(4)实现配置中心配置动态刷新:程序中获取配置信息,按照@Value 注解获取,如果需要动态获取,则需要在类上增加@RefreshScope注解,如下:
@RefreshScope
@Slf4j
@RestController
@RequestMapping("/test")
public class TestController {
@Value("${test.value}")
private String active;
@Value("${wx.appid}")
private String appid;
@RequestMapping(value = "/get", method = RequestMethod.GET)
public R get(){
return new R("active:"+active+"---appid"+appid);
}
}
更多推荐



所有评论(0)