Hystrix回退问题。 如果dbcall1由于某种故障而发生故障并发生短路,则dbcall2也将进入故障预警模式,直到电路打开。Hystrix回退处理2 dbcall
public class CommandHelloFailure extends HystrixCommand<String> {
private final String name;
public CommandHelloFailure(String name) {
super(HystrixCommandGroupKey.Factory.asKey("ExampleGroup"));
this.name = name;
}`enter code here`
String dbcall1()
{
new CommandHelloFailure().execute();
}
String dbcall2()
{
new CommandHelloFailure().execute();
}
@Override
protected String run() {
throw new RuntimeException("this command always fails");
}
@Override
protected String getFallback() {
return "Hello Failure " + name + "!";
}
}
但是我想独立回退的方法(数据库调用)。
您的代码不能编译。请编辑并修复 – rjdkolb
其伪代码..我面临的问题是1)如果dbcall1()由于实际故障而发生故障并发生短路,则对于withCircuitBreakerSleepWindowInMilliseconds时间,调用(dbcall1()和dbcall2 ())进入后备。 @rjdkolb – Nikita