我有一个 Java EE Web 应用程序。现在,当一个特定的请求到来时(比如 /xyz url 模式),我想做如下复杂的处理
以下 3 个步骤中的每一个都非常复杂且需要时间。
- 从 DB 中获取一张表的数据。表数据量大,查询需要时间。
- 对其他一些网络服务 A 进行网络服务调用并获取其数据。
- 对其他一些网络服务 B 进行另一个网络服务调用并获取其数据。
- 使用 1, 2, 3 的输出做一些处理
1、2、3相互独立,可以并行调用。
现在的问题是:
- 我可以在三个单独的线程中执行操作 1、2 和 3 吗?
- 是否建议为每个请求创建 3 个线程?
- 我应该使用线程池吗?