我在 WebLogic 10.3 上部署了一个应用程序,它表现出奇怪的行为。
- 我的应用程序正在以恒定(不是太高)的负载运行(20 个并发用户,运行轻量级活动)。
- 响应时间合理(应用程序稳定后远低于 100 毫秒)
- 内存消耗似乎还好(我的应用程序创建了很多短暂存活的对象,但是它们被垃圾收集了,所以总体内存消耗保持在 500mb 以下)。
- 线程统计数据看起来也很健康:
然而,在我让测试运行一段时间后,创建了越来越多的执行线程(“[ACTIVE] ExecuteThread:'3' forqueue:'weblogic.kernel.Default(self-tuning)'”),直到最终应用程序崩溃:
这个测试已经运行了很长时间(您在第一个屏幕截图中看不到的所有新线程都是在我写这个问题时创建的),并且我看到创建了更多的线程。
知道为什么要创建这些线程吗?