如何查找 Linux 上线程过多导致的性能问题的证据

如何查找 Linux 上线程过多导致的性能问题的证据

我们有一台 RHEL 5 服务器,具有 16 个 CPU 核心,运行许多 Java 进程,这些进程获取提交给它们的批处理作业。每个java进程有大约80个线程用于处理这些作业。服务器当前在批处理期间过载,平均负载在 50 到 60 之间。我观察到 CPU 每秒执行高达 60k 的上下文切换。

我怀疑减少 java 线程的数量会减少上下文切换的数量,并可能加快处理速度。

我是系统管理员,只能访问操作系统,而不能访问正在运行的代码。

从操作系统的角度来看,我如何收集证据表明情况可能如此?是否可以量化这些等待线程造成的延迟?

相关内容