我有一个tomcat服务器,它有几个运行时间相当长的操作,如果分解并并行处理,可以大大加快运行速度。就这一点而言,最佳做法是什么?
我担心,如果我只创建一些所有用户都共享的线程池,那么当服务器让许多用户执行这些操作时,性能将是不可预测的和无法预测的(因为他们都将从池中争夺线程)。解决方案仅仅是创建一个非常大的池吗?
任何指导都将不胜感激!
发布于 2015-05-29 03:20:02
线程池是一种诱人的解决方案,但正如您所怀疑的那样,它的可伸缩性在真正的多用户场景中是有限的。
在现实中,您将受到cpus数量的限制,而且大多数情况下,您将拥有比cpus更多的用户,所以我的经验是,尝试并行处理the服务器上运行的问题是徒劳无功的,除非您拥有大量的cpus。
https://stackoverflow.com/questions/30519694
复制相似问题