1.nacos
1.nacos作为注册中心
1.官网下载nacos-server(因为我需要nacos作为服务器),选择zip文件下载即可
2.下载之后解压进入文件夹,双击点开startup.exe,开启nacos服务,看到Complated initialization说明成功开启
3.开启之后,则可以根据官方文档对项目进行配置
1)在application.yml中添加nacos配置
2)在启动类中添加annoation(@EnableDiscoveryClient),然后就可以开启服务
3)登录127.0.0.1:8848/nacos,登录名和密码均为nacos,进入后看到所有注册到nacos的微服务
2.nacos作为配置中心
1.可以根据官网操作,首先引入pom依赖
2.第二步,创建一个bootstrap.properties文件,在里面声明服务名和服务地址,注意不要有空格
3.之后就可以在application.properties中定义几个参数了
4.在controller中使用@Value,从spring容器中拿数据
5.访问路径,查询返回结果
6.在这个时候,其实还没有发挥nacos作为配置中心的作用,因为如果动态修改了某一个微服务中的配置,在当前情况下还是需要重启项目才能修改数据。所以在nacos配置中心将服务配置进去,方便在以后开发中动态修改配置数据
2.在调用配置参数的controller层添加annotation,@RefreshScope
3.nacos配置中心动态修改数据,查看结果
2.Feign
Feign是一个声明式远程调用的HTTP客户端,整合了负载均衡(ribbon)和服务熔断(Hystrix)。当实际开发时,如果B服务想调用A服务中的一个方法,就可以使用Feign进行远程调用。
1.pom文件中引入相对应的依赖
<!-- Feign服务 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
2.在需要引入其他服务的服务中,创建一个文件夹,用于存放指向被调用方法的接口
先在接口中指明调用方法所在的项目模块名,然后写下要调用方法的请求路径
3.在启动类添加annotation,@EnableFeignClients,在basepackage中指向Feign包
4.在B服务的Controller中调用CouponFeignService方法,实现远程调用
5.部署项目,地址栏访问路径,查看结果