2.8. キャッシュローダーの使用
キャッシュローダーは JBoss Cache で重要な役割を果たします。 キャッシュローダーは、 ディスクやリモートキャッシュクラスタへノードを永続し、 キャッシュがメモリ不足になるとパッシベーションを実行できるようにします。 また、 キャッシュローダーにより、 JBoss Cache は永続ストレージよりインメモリステートを事前ロードできる「ウォームスタート」を実行できます。 JBoss Cache には複数のキャッシュローダー実装が同梱されています。
これらキャッシュローダーの説明や詳細設定、 調整については 9章キャッシュローダー を参照してください。
org.jboss.cache.loader.FileCacheLoader- ディスクへデータを永続化する基本的なファイルシステムベースのキャッシュローダーです。 非トランザクションで大変パフォーマンスに優れていますが、 大変簡単なソリューションとなります。 主にテスト向けに使用され、 実稼働における使用は推奨されません。org.jboss.cache.loader.JDBCCacheLoader- JDBC 接続を使用してデータを保存します。 内部プール内 (c3p0 プーリングライブラリを使用) や設定された DataSource より接続を作成し維持することが可能です。 この CacheLoader が接続するデータベースの場所はローカルかリモートになります。org.jboss.cache.loader.BdbjeCacheLoader- Oracle の BerkeleyDB ファイルベースのトランザクションデータベースを使用してデータを永続化します。 トランザクションで大変パフォーマンス的に優れていますが、 ライセンスが制限される可能性があります。org.jboss.cache.loader.JdbmCacheLoader- BerkeleyDB の代替となるオープンソースのキャッシュローダーです。org.jboss.cache.loader.tcp.TcpCacheLoader- TCP ソケットを使用し、 「ファーキャッシュ」パターンを用いて、 リモートクラスタへデータを「永続化」します。org.jboss.cache.loader.ClusteredCacheLoader- クラスタの他のノードがステートをクエリされる「読み取り専用」のキャッシュローダーとして使用されます。 完全なステート転送は高負荷になるため、 ステートをレイジーにロードしたい場合に便利です。