2009-05-25 13 views
6

ehcache(1.6.0-beta5)を使用して、決して変更されないテーブルの第2レベルキャッシングを有効にすることを検討しています。このテーブルには読み取り専用のehcache領域が設定されていますが、現在は正常に動作しているようです。キャッシュに保存されているHibnerate POJOはすべて不変です。hibernate第2レベルキャッシングのパフォーマンス

ここの開発者の一人は、ehcacheからオブジェクトを「水和」する時間、つまりエンティティの内部表現から実際のJavaオブジェクトへのマッピングに要する時間が大幅に短縮されるという問題を提起しました。代わりに、私たちは私たち自身のキャッシュにオブジェクトを手動で格納することを提案しました。これには私たちのコードを大幅に変更する必要があり、私は改善がどれほど大きくなるかを予約しています。

私の質問は以下のとおりです。

  1. が本当に重要な パフォーマンスのこの減少ですか?
  2. エンティティ が読み取り専用キャッシュに不変である場合、 は実際にはすべての水和を 行う必要がありますか? オブジェクトを直接格納することはできませんでしたか?

ありがとうございました。

答えて

4

水分補給にかかる時間をプロファイルする必要があります。それが(少なくとも数%の)重要なものであれば、コードの変更について考えるべきです。

+1

もちろん、それは間違いなく私たちにとって次のステップです。以前は水分補給のために他の人がパフォーマンスの問題を経験していたかどうかを見ていました。 –

+0

プロファイリングの結果はどうでしたか?あなたのケースでは、水分補給がパフォーマンスに大きな影響を与えましたか? – Jardo

関連する問題