What Default Thread Pool is Used by FeignClient in SpringBoot when Hystrix is Enabled

Multi tool use
To clarify this question, here we have two feign clients:
@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);
}
Would the requests of StudentFeign
and TeacherFeign
are executed in their own isolated thread pools or in the same thread pool?
The issue here is that if they are using the same thread pool, one slow/unstable feign client may consumes all the resources and affects the other.
If they have their own thread pools, it is using bulkhead pattern
, which seems safer to me.
hystrix netflix-feign spring-cloud-feign
add a comment |
To clarify this question, here we have two feign clients:
@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);
}
Would the requests of StudentFeign
and TeacherFeign
are executed in their own isolated thread pools or in the same thread pool?
The issue here is that if they are using the same thread pool, one slow/unstable feign client may consumes all the resources and affects the other.
If they have their own thread pools, it is using bulkhead pattern
, which seems safer to me.
hystrix netflix-feign spring-cloud-feign
I think the threadpool does not depend on tech but on which container you are using. For example, Tomcat by default has 1 threadpool which will be responsible for allocating thread to a dedicated request. The concern about excessive use of resources leads to the implementation of Hystrix. You can configure the slow/unstable feign to fail fast (circuit break) and then it will not consume too much resource of the system.
– thanh ngo
Jan 17 at 6:22
add a comment |
To clarify this question, here we have two feign clients:
@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);
}
Would the requests of StudentFeign
and TeacherFeign
are executed in their own isolated thread pools or in the same thread pool?
The issue here is that if they are using the same thread pool, one slow/unstable feign client may consumes all the resources and affects the other.
If they have their own thread pools, it is using bulkhead pattern
, which seems safer to me.
hystrix netflix-feign spring-cloud-feign
To clarify this question, here we have two feign clients:
@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);
}
Would the requests of StudentFeign
and TeacherFeign
are executed in their own isolated thread pools or in the same thread pool?
The issue here is that if they are using the same thread pool, one slow/unstable feign client may consumes all the resources and affects the other.
If they have their own thread pools, it is using bulkhead pattern
, which seems safer to me.
hystrix netflix-feign spring-cloud-feign
hystrix netflix-feign spring-cloud-feign
asked Jan 3 at 3:52


xuanzhuixuanzhui
384520
384520
I think the threadpool does not depend on tech but on which container you are using. For example, Tomcat by default has 1 threadpool which will be responsible for allocating thread to a dedicated request. The concern about excessive use of resources leads to the implementation of Hystrix. You can configure the slow/unstable feign to fail fast (circuit break) and then it will not consume too much resource of the system.
– thanh ngo
Jan 17 at 6:22
add a comment |
I think the threadpool does not depend on tech but on which container you are using. For example, Tomcat by default has 1 threadpool which will be responsible for allocating thread to a dedicated request. The concern about excessive use of resources leads to the implementation of Hystrix. You can configure the slow/unstable feign to fail fast (circuit break) and then it will not consume too much resource of the system.
– thanh ngo
Jan 17 at 6:22
I think the threadpool does not depend on tech but on which container you are using. For example, Tomcat by default has 1 threadpool which will be responsible for allocating thread to a dedicated request. The concern about excessive use of resources leads to the implementation of Hystrix. You can configure the slow/unstable feign to fail fast (circuit break) and then it will not consume too much resource of the system.
– thanh ngo
Jan 17 at 6:22
I think the threadpool does not depend on tech but on which container you are using. For example, Tomcat by default has 1 threadpool which will be responsible for allocating thread to a dedicated request. The concern about excessive use of resources leads to the implementation of Hystrix. You can configure the slow/unstable feign to fail fast (circuit break) and then it will not consume too much resource of the system.
– thanh ngo
Jan 17 at 6:22
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54016125%2fwhat-default-thread-pool-is-used-by-feignclient-in-springboot-when-hystrix-is-en%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54016125%2fwhat-default-thread-pool-is-used-by-feignclient-in-springboot-when-hystrix-is-en%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
oK6pLt,q0DYS4nhE,Doo O9Em2XlT
I think the threadpool does not depend on tech but on which container you are using. For example, Tomcat by default has 1 threadpool which will be responsible for allocating thread to a dedicated request. The concern about excessive use of resources leads to the implementation of Hystrix. You can configure the slow/unstable feign to fail fast (circuit break) and then it will not consume too much resource of the system.
– thanh ngo
Jan 17 at 6:22