hystrix熔斷器之使用入門
阿新 • • 發佈:2017-09-01
ask mman lec div 單繼承 per actor run ring
/* 調用程序對HelloWorldHystrixCommand實例化,執行execute()即觸發HelloWorldHystrixCommand.run()的執行 */ String result = new HelloWorldHystrixCommand("HLX").execute(); System.out.println(result); // 打印出Hello HLX
用戶將命令通過Hytrix調用(通過繼承HystrixCommand),通過Hystrix實現對調用異常的控制,以此來隔離被調用方對調用方的影響。
如果某程序或class要使用Hystrix,只需簡單繼承HystrixCommand/HystrixObservableCommand
並重寫run()/construct()
,然後調用程序實例化此class並執行execute()/queue()/observe()/toObservable()
// HelloWorldHystrixCommand要使用Hystrix功能
public class HelloWorldHystrixCommand extends HystrixCommand { private final String name; public HelloWorldHystrixCommand(String name) {
super(HystrixCommandGroupKey.Factory.asKey("ExampleGroup"));
this.name = name;
}
// 如果繼承的是HystrixObservableCommand,要重寫Observable construct()
@Override protected String run() {
return "Hello " + name;
}
}
/* 調用程序對HelloWorldHystrixCommand實例化,執行execute()即觸發HelloWorldHystrixCommand.run()的執行 */ String result = new HelloWorldHystrixCommand("HLX").execute(); System.out.println(result); // 打印出Hello HLX
hystrix熔斷器之使用入門