weblogic 线程监控显示不正确的数字与 OS 个线程

weblogic thread monitoring shows incorrect number vs OS threads

刚刚对我的应用程序进行了一些调试,发现了一个很大的差异。 Weblogic 在 6

报告(服务器 > 监控 > 线程)

但是当我查询 OS:

ps -eLF| grep user | grep -c java

linux 显示超过 37 个线程...所以我的第一个问题是,为什么会出现差异?我的第二个问题是如何获得更多信息,为什么 those 线程是从 os 开始的?

我问的原因是 运行 OS 上的资源不足,我正试图找出优化容器而不影响部署在其上的应用程序的巧妙方法...

尝试从 JVM 获取线程转储。有很多管理线程:

  • 编译器线程(用于生成机器代码)
  • 垃圾收集器线程(通常每个核心一个线程)
  • 完成队列处理线程
  • JMX 管理侦听器

Weblogic 可能还会维护一个线程池,报告的数量可能不包括池中休眠线程的数量。