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 に設定した状態で起動する必要があります。