我是靠谱客的博主 虚拟音响,最近开发中收集的这篇文章主要介绍springcloud 利用hystrix服务降级出现问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

com.netflix.hystrix.contrib.javanica.exception.FallbackDefinitionException: fallback method wasn't found: payment_Global_FallbackMethod([])

原因:

   配置全局兜底方法时,不需要参数。


public
String
payment_Global_FallbackMethod(){
return "全局兜底方法(*^▽^*)";
}

服务降级方法:


@HystrixCommand
public
String paymentInfo_TimeOut(@PathVariable("id") Integer id){
// int
age=10/0;
return orderHyxtrixService.paymentInfo_TimeOut(id);
}

我的原因是

  

public
String
payment_Global_FallbackMethod(@PathVariable("id") Integer id){
return "全局兜底方法(*^▽^*)";
}

知识点:

 

/**
* 消费者端服务降级
*
解决问题
*
服务端超时
*
消费者出现问题
*
准备工作:
*
在yml配置文件中添加
*
feifn:
*
hyxtrix:
*
enable: true
*
*
在主启动类上添加
*
@EnableHyxtrix
*
*
解决方法:
*
通过@HystrixCommand 在出现异常中方法中添加,@HystrixCommand 指定当前方法出现问题时,将跳转兜底方法
*
@HystrixCommand使用
*
@HystrixCommand(fallbackMethod = "paymentInfo_TimeOutHandler",
*
commandProperties = {@HystrixProperty(name="execution.isolation.thread.timeoutInMilliseconds",value="3000")})
*
fallbackMethod:兜底方法名
*
*
*
知识点二:
*
问题:服务降级每个方法都添加hyxtrix兜底的方法,造成方法的膨胀
*
*
解决:
*
//@DefaultProperties(defaultFallback ="")指定全局兜底方法,与注解@HystrixCommand配套使用,如果注解@HystrixCommand定义
*
fallback方法,走自己定义的fallback方法,反之走@DefaultProperties中指定的方法

最后

以上就是虚拟音响为你收集整理的springcloud 利用hystrix服务降级出现问题的全部内容,希望文章能够帮你解决springcloud 利用hystrix服务降级出现问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部