我们运行一个多线程JRuby(9.0.5.0(应用程序。而且我们看到我们的请求回复时间非常长(有时(。比如4-5秒,有时甚至比这还要大。当我们的 AVG 响应时间约为 10-90 毫秒时,一次大约 1-100 分钟。
该问题发生的时间很短(随机(,并且在初始故障后表现正常。
我们已经跟踪了 GC 信息,但在其中没有发现任何内容可以反映 GC 暂停会导致如此长的响应时间。
我的假设现在已经转移到上下文切换中丢失的时间。
所以我来这里是为了了解是否?
有没有办法..
- 测量父进程的整体上下文切换(累积(计时。
- 报告每个线程的单个上下文切换计时。
我的假设现在已经转移到上下文切换中丢失的时间。
不会去那里 - 除非你有数千个线程,JVM通过(它自己的(上下文切换进行微调。 听起来你在这里走错了路。 相反,您应该尝试进行一些分析或让具有更多JVM经验的人加入。