In this approach what i want to achieve is isolate issues related to latency and cricuit breaker open to be per service version so that if issue is there in one api call to a service version eg lets say ServiceAv1 then any call to SeeviceAv2 or ServiceBv1 etc should nit be impacted or starved for resesources eg thread availability.
In this scenario what is the best approach to configure threadpool. One default threadpool of 200 as maxSize assuming 200 is overall QPS across commands. Or having a threadpool for each command ie serviceVersion combination and have a core size of 20 threads since thats the avg QPS for service version at a time where as across service version is 200 QPS ie across 30 service version calls it is around 200 QPS.
Which approach will be better. Setting a default threadpool with core max size of 200 or having small threadpools of 20 coresize and one threadpool for command and each command is nothing but a service version specific endpoint.
Regards
Sambit