当每个请求的子任务未知时,单例ThreadPoolExecutor与单个ThreadPoolExecutor

问题描述

我有一个应用程序,其中每个HTTP剩余请求都被拆分为多个剩余请求以获取数据。

示例-获取学生ID 1的作业详细信息。对于学生1,作业ID的数量为(1,22,32,54)。然后,它对不同的REST服务进行4个REST调用以顺序获取数据。对于不同的学生,id的数量将有所不同,因此其余的呼叫。

我正在使用ThreadPoolExecutor完成此操作。当所有其余请求线程执行完毕后,获取结果列表。

我的问题是- 方法1-我应该创建一个Singleton版本的ThreadPoolExecutor吗? 方法2-或对于每个请求,我应该创建一个ThreadPoolExecutor池?

方法1- 来自另一个请求的任务将变得混乱,以及如何找出Http请求的结果列表。 成本不高,因为它只会创建一个池。

方法2- 每次创建一个池都非常昂贵。 来自另一个请求的任务不会混淆。 休息请求增加时,由于没有可用的内存,因此可能无法创建新的ThreadPoolExecutor。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)