SpringBoot溶断


最近SpringBootの溶断メカニズムを使っていますが、詳しいdemoは以下の通りです.本人も初めて書きますが、具体的な原理的なものもよくわかりません.ここではその使い方や注意点を簡単に紹介します.一度にテストに成功してほしいです.
demoコードは以下の通りです
package com.example.demo;

import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;
import com.netflix.hystrix.contrib.javanica.annotation.HystrixProperty;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

/**
 * Created by Lenovo on 2019/5/16.
 */
// @RestController @ResponseBody + @Controller 。
@RestController
public class HysController {

   /* @HystrixCommand(fallbackMethod="helloFallbackMethod",commandProperties =
            {@HystrixProperty(name = "execution.isolation.thread.timeoutInMilliseconds" , value = "10000")})*/
   @HystrixCommand(fallbackMethod="helloFallbackMethod")
    @GetMapping("/tt")
    public String tt(@RequestParam(name = "num") int num) throws InterruptedException {
        Thread.sleep(5000);
        int a = 15 / num;
        return "ok";
    }

    private String helloFallbackMethod(@RequestParam(name = "num") int num){
        return "fall back";
    }
}

まず起動クラスに注記を追加@EnableHystrixは溶断メカニズムの追加を示します
Controllerレイヤの特定のメソッドルーティングに@HystrixCommand(fallbackMethod="helloFallbackMethod")を追加すると、エラーまたはタイムアウト時にhelloFallbackMethodにジャンプします.例えばnum=0のコードでは、異常が放出され、溶断はhelloFallback Methodにジャンプします.Springbootのデフォルトのタイムアウト時間は1000 msで、コードのsleep(5000)も溶断しhelloFallback Methodにジャンプします.デフォルトのタイムアウトはアプリケーションで計算できます.ymlファイルには次のように構成するhystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=3000;ここでアプリケーションに追加します.ymlでいいです.3000 msのタイムアウトを表します.
次にhelloFallbackMethodメソッドを実装し、ここでhelloFallbackMethodのパラメータはルーティングメソッドのパラメータと一致しなければならない.