プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle TopLinkソリューション・ガイド
12c (12.2.1.2.0)
E82673-01
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

19 TopLink GridでのOracle Coherenceを使用したアプリケーションのスケーリング

この章では、TopLink Gridを紹介し、これを使用して高可用性を実現し、アプリケーションをスケール・アウトする方法を説明します。TopLink Gridの使用の詳細は、「Oracle Coherenceの統合」を参照してください。

この章の内容は次のとおりです。

ユース・ケース

JPAアプリケーションを、要求に対応するよう、また高可用性を実現するためにスケール・アウトする必要があります。

解決方法

TopLinkとCoherenceを統合したTopLink Gridを使用してこの実装を実現します。

コンポーネント

サンプル・アプリケーションへのリンクは、19.3項「その他の参考資料」を参照してください。

19.1 ソリューションの概要

Oracle TopLink Gridは、EclipseLink JPAとCoherenceとの統合を可能にするOracle TopLinkの機能です。標準のJPAアプリケーションは、プライマリ・データ・ストア(一般的にリレーショナル・データベース)と直接対話します。ただし、TopLink Gridの場合、ドメイン・モデルの一部またはすべてをCoherenceデータ・グリッドに格納できます。この構成は、グリッド基盤のJPAとも呼ばれています。

TopLink Gridを構成して、Coherenceのプライマリ・データ・ストアとしての使用、グリッドに対する問合せの実行、およびCoherenceによる新規データと変更データにおける永続性の管理ができます。Coherenceでは、JPAとデータ・ストア間のレイヤーが提供されており、すべてのアプリケーション・インスタンスからデータベース・コールを直接オフロードできます。これにより、クラスタ化されたアプリケーションのデプロイメントでは、通常のデータベース操作の限界を超えるスケーラビリティが得られます

アプリケーションで使用できる一般的なTopLink Gridの構成は次のとおりです。

  • グリッド・キャッシュ構成。CoherenceをTopLink L2(共有)キャッシュとして使用します。この構成では、Coherenceのキャッシュにすべて事前ロードできずデータベースでホストされるデータに依存するJPAアプリケーションにCoherenceのデータ・グリッドを適用します。事前ロードができない理由には、Coherenceのフィルタの機能セットを超える非常に複雑な問合せ、古いキャッシュの原因となるサード・パーティ製データベースによる更新、ネイティブSQL問合せ、ストアド・プロシージャやトリガーへの依存などがあります。

    この構成では、ローカルL2キャッシュを調整することなく、TopLinkを大規模なクラスタにスケール・アップできます。エンティティに対する更新は、トランザクションがコミットされると即時にすべてのCoherenceクラスタ・メンバーで使用可能になります。

  • グリッド・エンティティ構成。この構成は、(比較的安定した)大容量データへ高速にアクセスする必要があり、更新が比較的少ないアプリケーションに最適です。ライトビハインドを使用してこの構成をCoherenceキャッシュ・ストアと組み合せると、データベース更新を非同期に実行することにより、アプリケーションのレスポンス時間を向上させることができます。

  • グリッド読取り構成。この構成は、(比較的安定した)大容量データへ高速にアクセスして変更をデータベースへ同期的に書き込む必要のあるエンティティに最適です。これらのエンティティでは、Coherenceキャッシュへの移入にキャッシュ・ウォーミングが使用されますが、各問合せは必要に応じてデータベースに送信することもできます。

19.2 ソリューションの実装

TopLink Gridの構成の完全な詳細およびTopLink Gridを使用したアプリケーション開発については、「Oracle Coherenceの統合」を参照してください。

19.3 その他の参考資料

この章のソリューションが実装されているその他のテクノロジおよびツールの詳細は、次の参考資料を参照してください。