12.2. フレームワークの統合
Data Grid のこのリリースでは、Spring や Hibernate などの有名なエンタープライズ Java フレームワークとの統合が向上しています。
12.2.1. Spring の機能強化 リンクのコピーリンクがクリップボードにコピーされました!
このリリースでは、Spring Framework との Data Grid 統合に複数の機能強化が追加されています。
Data Grid のこのリリースは、Spring Framework および Spring Boot の特定のバージョンをサポートします。サポートされる構成については、https://access.redhat.com/articles/2435931 を参照してください。
12.2.1.1. 取得操作の同期 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid は SPR-9254 を実装するため、get()
メソッドが、マルチスレッドメカニズムを使用して、キー値を返します。
詳細については、org.springframework.cache
インターフェイスの get の説明を参照してください。
12.2.1.2. 非同期操作とタイムアウトの設定 リンクのコピーリンクがクリップボードにコピーされました!
Data Grid を Spring キャッシュプロバイダーとして使用する際、読み取り操作と書き込み操作を待機する最大時間を設定できるようになりました。タイムアウトにより、メソッド呼び出しを非同期で行うことができます。
次の put()
メソッドの例を使用して、タイムアウトの前後の違いを検討してください。
書き込みタイムアウト前
public void put(Object key, Object value, long lifespan, TimeUnit unit) { this.cacheImplementation.put(key, value != null ? value : NullValue.NULL, lifespan, unit); }
public void put(Object key, Object value, long lifespan, TimeUnit unit) {
this.cacheImplementation.put(key, value != null ? value : NullValue.NULL, lifespan, unit);
}
書き込みタイムアウト後
書き込み操作のタイムアウトを設定すると、putAsync
が呼び出されます。これは、他の書き込みをブロックしないファイアアンドフォーゲット呼び出しです。
タイムアウトを設定しない場合は、同期 put
が呼び出され、他の書き込みがブロックされます。
infinispan.spring.operation.read.timeout
および infinispan.spring.operation.write.timeout
でタイムアウト設定を行います。方法については、ドキュメントの タイムアウトの設定 を参照してください。
12.2.1.3. Spring アプリケーションの集中設定プロパティー リンクのコピーリンクがクリップボードにコピーされました!
Data Grid をリモートクライアントサーバーモードで Spring キャッシュプロバイダーとして使用している場合は、クラスパスの hotrod-client.properties で設定プロパティーを設定できます。その後、アプリケーションは、その設定で RemoteCacheManager
を作成できます。
使用可能な設定プロパティーに関する情報は、org.infinispan.client.hotrod.configuration パッケージの説明 で入手できます。
12.2.1.4. キャッシュ名を取得する機能 リンクのコピーリンクがクリップボードにコピーされました!
RemoteCacheManager
クラスには、["cache1", "cache2"]
などの文字列の JSON 配列としてキャッシュ名を返す getCacheNames()
メソッドが含まれるようになりました。このメソッドは org.springframework.cache.CacheManager
実装に含まれているため、Data Grid を Sping キャッシュプロバイダーとして使用する際、定義されたキャッシュ名を検索できます。
RemoteCacheManager の Javadoc で詳細を確認してください。
12.2.1.5. Spring Boot スターター リンクのコピーリンクがクリップボードにコピーされました!
Data Grid には、Spring Boot スターターが含まれており、迅速に起動および実行できます。Data Grid Spring Boot スターター を参照してください。
12.2.2. Hibernate のセカンドレベル (L2) キャッシング リンクのコピーリンクがクリップボードにコピーされました!
Data Grid は、アプリケーションの永続レイヤーのパフォーマンスを向上させるために、(L2) キャッシュプロバイダーとして Hibernate とシームレスに統合されています。
Hibernate は、Java 用のオブジェクト/リレーショナルマッピング (ORM) 機能を提供し、完全に準拠した JPA (Java Persistence API) 永続化プロバイダーです。Hibernate は、キャッシュ内のオブジェクトがセッションにバインドされる第 1 レベル (L1) キャッシュを使用します。L2 キャッシュプロバイダーである Data Grid は、すべてのセッションでオブジェクトのグローバルキャッシュとして機能します。
次の場所で、Data Grid を L2 キャッシュとして設定できます。
- JPA: persistence.xml
- Spring: application.properties
L2 キャッシュの有効化に関する完全な情報、およびさまざまなデプロイメントシナリオの情報については、ドキュメントの JPA/Hibernate L2 Cache を参照してください。
12.2.3. 組み込みモードでの Red Hat SSO との統合 リンクのコピーリンクがクリップボードにコピーされました!
このリリースでは、Red Hat SSO を使用して、ライブラリー (組み込み) モード で Data Grid へのアクセスを保護するためのサポートを提供します。
詳細については、secure-embedded-cache クイックスタートを参照し、Red Hat SSO との統合を示すサンプルアプリケーションをデプロイおよび実行してください。