多线程并行处理

Multitenented Parallel Processing

我有一个 tomcat 服务器,其中有一些相当长的 运行 操作,我觉得如果拆分并并行处理这些操作可以大大加快速度。就此而言,最佳做法是什么?

我担心如果我只创建一些由所有用户共享的线程池,当服务器有许多用户执行这些操作时,性能将不可预测并且会下降(因为他们都将竞争池中的线程) .解决方案只是创建一个非常大的池吗?

任何指导将不胜感激!

线程池是一个诱人的解决方案,但正如您所怀疑的那样,它的可扩展性在真实的多用户场景中可能会受到限制。

实际上,无论如何你都会受到 cpus 数量的限制,而且大多数时候你的用户数量会多于 cpus,所以我的经验是尝试并行化一个问题 运行在网络服务器上是徒劳的,除非你有疯狂数量的 cpus。