22.9. 他の管理ツールと操作
22.9.1. URL 経由のデータアクセス リンクのコピーリンクがクリップボードにコピーされました!
put() および post() メソッドは、キャッシュにデータを格納します。使用される URL より使用されるキャッシュ名とキーを判断することができます。データはキャッシュに格納される値で、要求の本文に置かれます。
GET および HEAD メソッドが使用され、他のヘッダーはキャッシュの設定と挙動を制御します。
注記
22.9.2. Map メソッドの制限 リンクのコピーリンクがクリップボードにコピーされました!
size()、 values()、 keySet()、 entrySet() などの特定の Map メソッドは不安定であるため、Red Hat JBoss Data Grid で一定の制限付きで使用することが可能です。これらのメソッドはロック (グローバルまたはローカル) を取得せず、同時編集、追加、および削除はこれらの呼び出しでは考慮されません。
Red Hat JBoss Data Grid 6.3 以降、マップメソッド size()、values()、keySet()、および entrySet() には、デフォルトでキャッシュローダー内のエントリーが含まれます ( 以前は、これらのメソッドにはローカルのデータコンテナーのみが含まれていました)。基礎となるキャッシュローダーはこれらのコマンドのパフォーマンスに直接影響を与えます。たとえば、データベースを使用している場合、これらのメソッドはデータが格納されるテーブルの完全なスキャンを実行し、処理が遅くなることがあります。古い動作を保持するには Cache.getAdvancedCache().withFlags(Flag.SKIP_CACHE_LOAD).values() を使用し、パフォーマンスの低下を回避するにはキャッシュストアからロードしないようにしてください。
JBoss Data Grid 6.3 では、Cache#size() メソッドはローカルノードのエントリー数のみを返し、クラスター化キャッシュの他のノードを無視し、失効したエントリーを含みます。デフォルトの動作が JBoss Data Grid 6.4 以降で変更されなかった場合は、infinispan.accurate.bulk.ops システムプロパティーを true に設定することにより、多くの操作 (size() を含む) に対して正確な結果を有効にできます。操作のこのモードでは、size() メソッドにより返される結果は、ローカルノードに存在するエントリーの数を返すフラグ org.infinispan.context.Flag#CACHE_MODE_LOCAL と、すべてのパッシブ化エントリーを無視するフラグ org.infinispan.context.Flag#SKIP_CACHE_LOAD によって影響を受けます。
JBoss Data Grid 6.3 では、Hot Rod size() メソッドは STATS 操作を呼び出し、返された numberOfEntries 統計を使用してキャッシュのサイズを取得していました。この統計は、失効済みのパッシブ化エントリーを考慮せず、操作に応答したノードにのみローカルであるため、キャッシュ内のエントリー数を正確に反映しません。別の結果として、セキュリティーが有効である場合は、クライアントが適切な BULK_READ の代わりに ADMIN パーミッションを必要とします。
SIZE 操作で拡張され、クライアントが size() メソッドにこの操作を使用するよう更新されました。JBoss Data Grid サーバーは、サイズを正確に計算できるように infinispan.accurate.bulk.ops システムプロパティーを true に設定した状態で起動する必要があります。