Какой пул потоков по умолчанию используется FeignClient в SpringBoot, когда включена Hystrix - PullRequest
0 голосов
/ 03 января 2019

Чтобы прояснить этот вопрос, у нас есть два симулированных клиента:

@FeignClient(name = "student")
public interface StudentFeign {
    @GetMapping(value="/v1/student/{id}")
    Student getStudent(@PathVariable("id") String id);
}

@FeignClient(name = "teacher")
public interface TeacherFeign {
    @GetMapping(value="/v1/teacher/{id}")
    Teacher getTeacher(@PathVariable("id") String id);
}

Будут ли запросы StudentFeign и TeacherFeign выполняться в их собственных изолированных пулах потоков или в том же пуле потоков?

Проблема здесь в том, что, если они используют один и тот же пул потоков, один медленный / нестабильный клиент симуляции может потреблять все ресурсы и влиять на другой.

Если у них есть свои собственные пулы потоков, он использует bulkhead pattern, что мне кажется более безопасным.

...