如果有人经历过这个或有任何想法,我将不胜感激......
我会说得对: 有问题的系统使用java6,tomcat6和ibatis
由于将数据库从Mysql5.1升级到Mysql5.5,系统变得不稳定。 在查看jmap histo并使用jhat分析内存转储时,很明显该问题与应用程序的JDBC端有关。
系统平均每秒执行3,000次选择/插入/更新,它是当天准备语句实例计数在10到30之间的最繁忙时间。我们在正常操作期间看到的最高计数刚刚超过50。
奇怪的是,崩溃没有模式,系统在一小时的时间内多次崩溃,而其他时间可能会在崩溃之间传递数天。
在崩溃期间观察到的最高实例数超过500万。
以下是来自其中一个内存转储的JDBC4PreparedStatement的一些jhat数据
当我们收到崩溃的开始时(此时只有200k实例),我们采取了这个转储