1

JBoss 6.1 (Hibernate 3.6) で正常に動作するクエリがあります。これは、955 レコードを返す単純な 2 つのテーブル結合です。同じ .war ファイルを JBoss 7.1.1 にデプロイすると、パフォーマンスが劇的に低下します (少なくとも 1 桁)。クエリは次のとおりです。

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 のバージョンを特定できていないため、どのバージョンに対してバグを報告すればよいかわかりません。

Hibernate 3.6 から 4.x への移行で、この種のパフォーマンス ヒットを見た人はいますか? 何が原因なのですか?

4

1 に答える 1

0

ロギングしすぎていませんか?

それには本当に時間がかかるので、ログに記録しないと、パフォーマンスが向上します。

私は、ログ呼び出しが1つだけのサーブレットを持っています。これは、Firebug / Firefoxによると、ログなしで1ミリ秒、ファイルのみで2ミリ秒、ファイルとコンソールで3ミリ秒のログインで応答します。そして、955回ログに記録すると1,270ミリ秒になります。

それらのロギングの時間は、多くの試みの中で最高のものですが、頻繁ではありません。反対側では、ロギングなしの1msがより頻繁に発生します。

于 2012-11-17T08:08:57.990 に答える