什么是在JBoss 7.1.1(Hibernate 4.x)中杀死JPA查询性能?

时间:2012-06-11 21:16:03

标签: hibernate jboss jpa-2.0

我有一个在JBoss 6.1(Hibernate 3.6)中运行良好的Query。它是一个简单的两个表连接,返回955条记录。当我在JBoss 7.1.1中部署相同的.war文件时,性能会大幅下降(至少一个数量级)。这是查询:

SELECT c.uid, c.name, -1, c.file_Id, cs.error, cs.is_Error, c.parent_Uid, c.job_Id, c.description 
FROM stage.Classification_Status cs, stage.Classification c 
WHERE cs.is_Error = true AND cs.classification_Id = c.id AND c.job_Id = 3001;    

我还没知道JBoss 7.1.1捆绑了哪个版本的Hibernate,所以我不知道哪个版本会提交bug。

有没有其他人看到这种性能从Hibernate 3.6变为4.x?是什么原因导致它?

1 个答案:

答案 0 :(得分:0)

你记录的太多了吗?

因为这确实需要时间,所以如果你不记录,性能会更好。

我有一个只有一个日志调用的servlet,根据Firebug / Firefox,在1毫秒内响应,无需记录,2毫秒仅记录文件,3毫秒记录文件和控制台。当我记录955次时,和1,270毫秒

那些记录的时间是许多尝试中最好的,但不是经常。另一方面,没有记录的1ms发生得更频繁。