3

次の警告が表示されますが、どうすればよいかわかりません。禁止 IP が更新されるたびに、Tomcat の catalina.out ログ ファイルにこの警告を書き込むエントリが約 80000 あります。

WARNING: Cache package.BannedIP Key package.BannedIP#73121 Lockable : null
A soft-locked cache entry was expired by the underlying Ehcache. If this happens regularly   you should consider increasing the cache timeouts and/or capacity limits
Dec 16, 2010 10:00:53 PM net.sf.ehcache.hibernate.strategy.AbstractReadWriteEhcacheAccessStrategy handleLockExpiry

ehcache.xml ファイルの BannedIP の構成:

    <cache name="package.BannedIP"
       maxElementsInMemory="80000"
       eternal="true"
       overflowToDisk="true"
       diskPersistent="true" />

どんな助けでも大歓迎です。

4

2 に答える 2

4

この警告の結果として、パフォーマンスまたはユーザビリティの問題が発生していますか? そうでない場合は、この警告を単なる警告として扱う必要があるようです。

maxElementsInMemoryそれ以外の場合は、キャッシュされているものと実際に使用されているものとの違いを考慮してのサイズを大きくすることが解決策のようです。

お役に立てれば。

于 2011-01-02T03:28:47.793 に答える
2

package.BannedIP に期待どおりの内容が実際に含まれていることを確認しましたか?

プログラムで統計を使用して、何が起こっているかを確認できます。そこにある構成ビットを考えると、Ehcache は何も削除しないはずです (BannedIP インスタンスが 80k 未満である限り)。

また、そのメッセージの意味を明確にするために、BannedIP インスタンスを更新中ですが、コミットが発生すると、Hibernate がこのエントリをマークするために配置した SoftLock が更新中です。なんらかの理由で立ち退きされました...なぜこれらの更新に時間がかかるのだろうか?

また、大声で考えているだけですが、他のプロセス(一括更新)がキャッシュ領域全体を無効にしている可能性がありますか?

于 2011-01-03T10:00:10.583 に答える