【发布时间】:2019-02-05 06:32:27
【问题描述】:
我有一个运行在 8 核系统上的 tomcat 应用程序。我观察到,当将 maxthread count 从 16 更改为 2 时,13 req/sec 的吞吐量性能显着提高
所以,开始打印活动线程数,似乎当tomcat的maxthread设置为2时,活动线程平均为8,所以基本上8个线程在8核上运行,最好的结果
但是,当我将吞吐量提高到 30-40 个请求/秒时,我看到请求排队。所以,这里发生的事情是由于只有 maxthreads 2 个请求开始堆积。
然后当我将 maxThreads 设置为非常高的值(例如 10k)时,我看到 JVM 再次花费很长时间进行上下文切换。
我的问题是,tomcat 中是否有任何属性,我可以在其中指定要在 JVM 中并行处理多少请求。
acceptCount 属性无济于事,因为它只定义了请求的阈值。
还有一个名为 acceptorThreadCount 的属性,它被定义为用于接受连接的线程数,这是我需要调整的属性,还是有任何其他属性,或者我在这里缺少什么?
【问题讨论】:
标签: performance tomcat