如何选择HTTP servlet容器的最大线程数?

hsi*_*nen 7 java concurrency optimization servlets http

我正在开发一个在Jetty中作为servlet(使用阻塞IO)运行的restful Web服务.找出最大线程的最佳设置似乎很难.

是否有研究公式用于从其他设置的一些易于测量的特征中确定最大线程数?

Vil*_*kas 3

非常简单和原始的一种:

最大线程数 = CPU 数 * C

其中 C 取决于您应用程序的其他因素:-)

问自己以下问题:

  • 您的应用程序是 CPU 密集型(较低 C)还是花费大部分时间等待第三个系统(较高 C)?
  • 您是否需要更快的响应时间(较低的 C)或能够同时为多个用户提供服务,即使每个请求需要更长的时间(较高的 C)。

通常我将 C 设置得相当低,例如 2 - 10。