分布式 服务保护机制SpringCloud Hystrix
报错:com.netflix.hystrix.contrib.javanica.exception.FallbackDefinitionException: fallback method wasn’t found
这是错误的代码
@RestController
public class Ordertomember implements Ordertimemeber {
@Autowired
private Ordertomenberfeign ordertomenberfeign;
@HystrixCommand(fallbackMethod = "getordertomemberhystyix")
@RequestMapping("/getordertomeneber")
public String getordertomeneber(String name) {
String getmember = ordertomenberfeign.getmember(name).toString();
return getmember;
}
@RequestMapping("/hai")
public String getordertomemberhystyix(){
return "系统异常,请稍后重试";
}
}
报错的原因就是因为 ` @RequestMapping("/hai")
public String getordertomemberhystyix(){
return "系统异常,请稍后重试";
}`
**这里没有引入上面的参数导致的!`String name`
也就是说我们要用到短溶器来做服务保护的时候,要注意 降级的方法上要和主方法上的参数相同才行**
正确的方法如下!
@RestController
public class Ordertomember implements Ordertimemeber {
@Autowired
private Ordertomenberfeign ordertomenberfeign;
@HystrixCommand(fallbackMethod = "getordertomemberhystyix")
@RequestMapping("/getordertomeneber")
public String getordertomeneber(String name) {
String getmember = ordertomenberfeign.getmember(name).toString();
return getmember;
}
@RequestMapping("/hai")
public String getordertomemberhystyix(String name){
return "系统异常,请稍后重试";
}
}
***
## ok,搞定哦! 所以要注意是否有参数哦!
***