带有Hibernate、Spring和Oracle的Web应用程序占用了99%的CPU(行锁争用)

带有Hibernate、Spring和Oracle的Web应用程序占用了99%的CPU(行锁争用),hibernate,coldfusion,cpu-usage,Hibernate,Coldfusion,Cpu Usage,我们在Linux环境中有一个web应用程序,CPU有时会上升到99% 有时需要几天,有时需要几分钟。我们在TomcatWebApp和Oracle数据库中使用Hibernate和Spring 检查日志时,会出现以下情况: “ConnectionManager-使用on_close connection release模式在会话上完成事务;请确保关闭会话以释放JDBC资源!” 然后sessioncount开始增长,直到256个会话(Apache confs允许的最大会话数)。这是会话计数达到256时

我们在Linux环境中有一个web应用程序,CPU有时会上升到99%

有时需要几天,有时需要几分钟。我们在TomcatWebApp和Oracle数据库中使用Hibernate和Spring

检查日志时,会出现以下情况:

“ConnectionManager-使用on_close connection release模式在会话上完成事务;请确保关闭会话以释放JDBC资源!”

然后sessioncount开始增长,直到256个会话(Apache confs允许的最大会话数)。这是会话计数达到256时显示的行:

“ContainerBackgroundProcessor[StandardEngine[Catalina]]ManagerBase-在1259947978384会话计数256处启动过期会话StandardManager”

在这之后,CPU得到99%

有什么建议吗?所有这些都将受到高度赞赏

提前谢谢


p、 不久前,我们在行锁争用方面遇到了一些类似的问题。这就是我们采用Spring的原因。

没有足够的信息来真正了解导致您出现问题的原因。一些有用的信息是关于coldfusion线程数(和最大值)的信息。当web服务器负载达到峰值时,数据库负载也是有意义的。随着这个问题的出现,发生了什么变化?

啊,这可能是可怕的客户端清除问题。如果不使用客户机变量,请将其关闭


从CFAdmin>Server Settings>Client Variables>Select Default Storage Mechanism for Client Sessions设置为None。

很可能是代码问题。你有进取心吗?如果是这样,运行服务器监视器或从Fusion Reactor或SeeFusion购买服务器监视器。他们应该帮助识别问题。我们有企业精神。JVM内存使用情况摘要的图表没有超出正常值。cpu增长如此之高时,是否有特定的模板在运行?没有。这是一个非生产环境(但在公司外部可用),昨天午夜出现问题。np0x我正在检查您所说的“数据库在做什么”和日志,此时会出现以下内容:“ConnectionManager-使用on_close connection release模式在会话上完成事务;请确保关闭会话以释放JDBC资源!”。sessioncount开始增长(ContainerBackgroundProcessor[StandardEngine[Catalina]]ManagerBase-Start expire sessions StandardManager,电话:1259947978384 sessioncount 62),直到256(Apache confs允许的最大值)“ConnectionManager-使用on_close连接释放模式在会话上完成事务;确保关闭会话以释放JDBC资源!“我是否应该在hibernate属性配置XML中配置以下内容:“after_statement”?是否有任何hibernate专家?提前完成!我们已经取消激活该Sam。检查此链接后:。问题不断出现。