一段时间以来,我的应用开始消耗大量CPU。一段时间以来,我的应用程序开始消耗大量CPU。我安装了JProfiler,据我所知,hibernate的c3p0存在问题。我正在使用hibernate 4.3,jsf2.2.10 + primefaces 5.2,tomcat 8.5,也请使用ehcache。
这是我打印的一些结果。
答案 0 :(得分:4)
您可以更改为使用Hikari连接池,
请参见Brett Wooldridge的C3P0池分析:
我们统计了230多个同步块和方法的使用,以及各个类中的wait()和notifyAll()。相比之下,采用无锁设计的HikariCP和Vibur-DBCP则为0。广泛广泛使用锁会导致容易出现死锁的代码,而对此的证据可以通过谷歌搜索“ c3p0死锁”找到。
我们确实给予C3P0荣誉,因为它似乎涵盖了所有基本原理。不幸的是,C3P0在每个微基准测试中也始终排在最后。
不安全的默认值 默认情况下不:
在getConnection()时间测试连接