Spring Cloud传参数+熔断器+负载均衡
| 课程回顾
1、配置应用程序名称的属性是什么?
spring.application.name
2、feign接口使用的注解是?
@FeignClient
| 预习检查
1、什么是熔断器?
熔断器就相当于电路中的保险丝、保护器,它可以实现快速失败,如果它在某一段时间里侦测到许多类似的错误,它将不再访问远程服务器,会强迫以后的访问都会快速失败,从而防止某个服务不断地尝试执行可能会失败的操作,它会使服务继续执行而不用等待修正错误,或者浪费CPU时间去等到长时间的超时产生,从而进入回路方法。
2、什么是负载均衡?
负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助
| 章节目标
- 传简单参数。
- 传对象参数。
- 熔断器。
- 客户端负载均衡。
| 章节重点、难点
1)、重点
传参数、熔断器、负载均衡。
2)、难点
熔断器、负载均衡、网关配置。
| 知识点讲解
传简单参数
1、修改提供者的控制器。
上节示例中我们只是讲解了消费者调用提供者的无参方法,接下来演示带参方法。
在dm-user-provider工程中修改UserController类
package com.dm.controller;
//导包省略
@RestController
public class UserController {
//此处方法加了参数
@RequestMapping(value = "/login",method = RequestMethod.GET)
public String login(@RequestParam("userName") String userName) throw Exception{
return " 提供者1 登录成功 " +userName;
}
}
2、修改消费者的feign接口
在dm-user-comsumer工程中修改UserFeignClient类
@FeignClient(name="dm-user-provider")
public interface UserFeignClient {
@RequestMapping(value = "/login",method = RequestMethod.GET)
public String login(@RequestParam("userName") String userName) throw Exception;
}
3、修改消费者的控制器类
在dm-user-comsumer工程中修改UserController类
@RestController
public class UserController{
@Resource
private