本周早些时候,我们在其中一台服务器上遇到了Websphere OutOfMemory异常,现在我的问题是,如果IHS的并发客户端数量有限,可能会阻止这种情况。潜在的问题是由数据库锁定引起的,但是当它被清除时,WebSphere就没有内存了。
我只是想知道是否应该限制IHS中并发客户端连接的数量以防止发生此错误?
任何帮助或建议都将受到高度赞赏。
答案 0 :(得分:2)
限制并发会话数不会解决问题,但解决问题。
如果WebSphere内存不足,那么您应该做的第一件事就是获取堆转储,分析它并找出应用程序为什么要使用整个堆。我可能会遗漏一些东西,但由于数据库锁定而占用整个堆的应用程序意味着一个错误。
在以下情况下,限制并发会话数只是一种有效的解决方案(而非解决方法):
X
个RAM(即:X
是会话占用的最大RAM量,假设应用程序按设计工作),并且您的堆大小限制为{ {1}}。在这种情况下,将并发会话数限制为Y
是有意义的。这是一个有效的解决方案(而不是解决方法),因为实际上,您的架构不能承受更多会话。