我需要一个执行程序服务来调用第三方服务,以节省rtt和延迟,并计划同时触发所有第三方请求。

我想知道是否应为每个请求创建ExecutorService吗?或存储在本地线程?或每个应用一个?

如果我从不明确地呼叫shutdown会发生什么?

谢谢。

最佳答案

您很可能希望每个应用程序只有一个ExecutorService。它实际上是变相的线程池,因此您可能不需要每个请求或每个线程一个线程池。

不必调用shutdown(),但是如果它在您打算重新部署的Web应用程序中运行,则将导致内存泄漏。

关于java - ExecutorService的存储位置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13277100/

10-10 21:50