WEB应用中的缓存线程池性能

Cached Thread Pool performance in WEB application

我有Spring Boot Application.

它使用foreach 中的restTemplate 向其他服务器(副本)发送请求。只有一件事不同 - url 地址。

我想在这种情况下我应该使用 ExecutorService.newCachedThreadPool() 而不是 foreach。

1。我有一些@ Controllers具有相同的逻辑。我应该将单个 ExecutorService 用于应用程序还是每个 @ Controller 它自己的 ExecutorService
2ThreadPool 行为 - 如果已达到最大大小,没有空闲线程,并且队列变满,拒绝策略开始。
我可以检查它还是只是为了处理异常?

如果你有这样的场景

不同应用程序的多个实例URL

AppInstance1 => localhost:8881
AppInstance2 => localhost:8882
...
AppInstanceN => localhost:888N

现在你可以在一个公共 URL say

上定位所有这些应用程序
http://localhost/

您可以使用任何负载均衡器,例如 Nginx

负载均衡器的作用是根据配置的算法将您的请求重定向到不同的服务器

例如。循环赛

所以当用户点击 http://localhost/user/1

AppInstance1AppInstance2.. 可以满足此请求