9.3.6. キャッシュローダーの変換
FileCacheLoader および JDBCCacheLoader ベースのキャッシュストアにキャッシュされたデータが書き込まれる方法は JBoss Cache 2.0 で変更になりました。こ れらのキャッシュローダーは、 ネットワーク全体でデータをレプリケートするために使用される同じマーシャリングフレームワークを使用してデータを読み書きするようになりました。 他のノードがこの形式を認識することのみが必要となるため、 この変更はレプリケーションではほとんど影響がありません。 しかし、 キャッシュストアのデータの形式を変更すると、 他の問題が生じます。 JBoss Cache 1.x.x 形式で保存されたデータをどのように JBoss Cache 2.0 形式へ移行するのでしょうか。
これを考慮し、 JBoss Cache 2.0 には任意の jbosscache-cacheloader-migration.jar ファイルに
org.jboss.cache.loader.TransformingFileCacheLoader と org.jboss.cache.loader.TransformingJDBCCacheLoader の 2 つのキャッシュローダー実装が含まれています。 これらのキャッシュローダーは JBoss Cache 1.x.x 形式のキャッシュストアよりデータを読み取り、 JBoss Cache 2.0 形式のキャッシュストアへデータを書き込む 1 回限りのキャッシュローダーです。
ユーザーが既存のキャッシュ設定ファイルを一瞬に変更し、 これらのキャッシュローダーを使用してキャッシュのインスタンスを作成する小さな Java アプリケーションを作成し、 再帰的にキャッシュ全体を読み取り、 キャッシュにデータを書き戻します。 データが変換されると、 元のキャッシュ設定ファイルに戻ることができます。 ユーザーがこのタスクを簡単に実行できるようにするため、 JBoss Cache ディストリビューション内の
examples/cacheloader-migration ディレクトリ以下にキャッシュローダーの移行例が格納されています。 examples.TransformStore の例は、 キャッシュに保存されている実際のデータとは独立し、 再帰的に読み取られたデータを書き戻します。 データをポートしたいユーザーは最初にこの例を実行することが推奨されます。 この例には例の詳細情報が記載されている readme.txt ファイルが含まれ、 独自のアプリケーションの基盤として使用できます。