Cosminexus 機能解説

[目次][用語][索引][前へ][次へ]

8.5.2 ネーミングで使用したキャッシュのクリア

ネーミングで使用しているキャッシュは,クリアできます。ただし,クリアするキャッシュサイズは設定できません。ここでは,キャッシュクリアが行われるタイミングと,クリアされる範囲について説明します。

<この項の構成>
(1) キャッシュクリアのタイミング
(2) キャッシュクリアの範囲

(1) キャッシュクリアのタイミング

キャッシュの内容は次のどちらかのタイミングでクリアされます。

(2) キャッシュクリアの範囲

キャッシュクリアの範囲は2とおりあります。

  1. キャッシュ領域をすべてクリアします。
  2. 無効なキャッシュ領域だけをクリアします。

1.の場合,キャッシュの全領域をクリアします。一方,2.の場合は,定期的に,キャッシュに保存されたオブジェクトが有効かどうかを確認し,無効なオブジェクトだけをキャッシュからクリアします。また,2.の場合,キャッシュクリアと同じタイミングで,一度検索を行ったCORBAネーミングサービスの状態を監視します。これによって,一度検索されたCORBAネーミングサービスの場合,CORBAネーミングサービスがダウンしたあとは,該当するCORBAネーミングサービスの検索を実施しません。また,CORBAネーミングサービスが再起動すると,該当するCORBAネーミングサービスの検索を自動的に開始します。

参考
EJBホームオブジェクトの再接続機能を使用している場合,J2EEサーバを再起動したあとでも,キャッシュは無効になりません。
このため,無効なキャッシュ領域だけをクリアする指定をしているときでも,CORBAネーミングサービスのEJBホームオブジェクトのオブジェクトリファレンスは,キャッシュ領域から削除されません。
EJBホームオブジェクトのリファレンスの検索(ルックアップ)で,削除されなかったキャッシュ上のオブジェクトリファレンスがそのまま使用できます。