Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JBoss7.1.1(Hibernate4.x)中的JPA查询性能下降的原因是什么?_Hibernate_Jboss_Jpa 2.0 - Fatal编程技术网

JBoss7.1.1(Hibernate4.x)中的JPA查询性能下降的原因是什么?

JBoss7.1.1(Hibernate4.x)中的JPA查询性能下降的原因是什么?,hibernate,jboss,jpa-2.0,Hibernate,Jboss,Jpa 2.0,我有一个在JBoss6.1(Hibernate3.6)中运行良好的查询。这是一个简单的两表联接,返回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

我有一个在JBoss6.1(Hibernate3.6)中运行良好的查询。这是一个简单的两表联接,返回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,所以我不知道应该针对哪个verion提交bug


还有谁见过这种从Hibernate3.6到4.x的性能冲击吗?你知道是什么原因吗?

你记录得太多了吗

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

我有一个只有一个日志调用的servlet,根据Firebug/Firefox,响应时间为1ms,没有日志记录,只有2ms登录文件,3ms登录文件和控制台和1270毫秒当我记录955次时


通过多次尝试,这些日志记录的时间是最好的,但并不经常。另一方面,不记录日志的1ms更为频繁。

我假设在两台服务器上生成相同的查询?如果发送相同的SQL查询,则结果必须位于较高级别的某个位置。数据源配置不正确/缺少池或没有缓存?也许N+1问题不知何故发生了?您确定没有向数据库发送额外流量吗?您尝试过分析吗?时间花在query.getResultList()中。我从JBoss7.1(存在性能问题)获取了Hibernate生成的查询,并直接在同一个数据库上运行它,该查询立即返回955个结果。这不是生成的查询,而是JBoss 7/Hibernate 4.x对结果集所做的操作。