プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle WebCenter Sitesでの開発
12c (12.2.1)
E72540-01
目次へ移動
目次

前
次

64 WEMフレームワークでのバッファリング

アセットの作成、更新、削除操作は、読取り操作と比べるとはるかに低速です。場合によっては、これらの操作を遅延させて、最終的に一貫性が保証される形で後で操作が行われるようにすることも可能です。つまり、遅延(バッファ済)操作を実行すると、有限で不確定な時間にWebCenter Sitesプラットフォームが変更を受け取ることが保証されます。バッファリング操作はきわめて高速ですが、プラットフォームでのアセットの作成、更新、削除に必要な合計時間が短縮されるわけではありません。

WEMフレームワーク内のバッファリングの詳細は、次の項を参照してください。

64.1 バッファリング・システムのアーキテクチャ

バッファリング・サブシステム(図64-1)の現在の実装は、Java Messaging Service (JMS)テクノロジに依存しています。

図64-1バッファリング・システムのアーキテクチャ

図64-1の説明が続きます
「図64-1バッファリング・システムのアーキテクチャ」の説明

バッファリングは次のコンポーネントで構成されます。

  • バッファリング・プロデューサ。メッセージを生成し、それをメッセージング・キュー(MQ)に入れます。

  • バッファリング・コンシューマ。MQからメッセージを取得し、それをプラットフォームで維持します。

バッファリング・プロデューサは、アセットRESTサービス<BaseURI>/sites/<sitename>/types/<assettype>/assets/<id>が使用可能な場合は、WebCenter SitesとリモートSatellite Serverの両方で使用できます。リモートSatellite Serverで使用する場合、バッファリング・プロデューサはWebCenter Sitesと通信しないため、システム全体の線形スケーラビリティが確保されます。

注意:

バッファリング・コンシューマは、WebCenter Sitesでのみ使用できます。バッファリング・コンシューマは、プライマリ・クラスタ・メンバーのみで有効にすることをお薦めします。複数のクラスタ・メンバーで有効にすると、CRUD操作の順序が保証されません。

64.2 バッファリングの使用

  1. JMSプロバイダがまだインストールされていない場合はインストールします。サポート対象のプロバイダについては、Oracle Technology Network (http://otn.oracle.com)から入手可能なOracle Fusion Middleware WebCenter Sites動作保証マトリックスを参照してください。
  2. WebCenter Sites (およびオプションでリモートSatellite Server)でBufferingConfig.xml (表64-1)を構成します。
    id="bufferingManager" class=
      "com.fatwire.cs.core.buffering.jms.JmsBufferingManager"
    

    表64-1 BufferingConfig.xmlのプロパティ

    プロパティ名 説明

    jmsConnectionFactory

    必須。javax.jms.ConnectionFactoryのインスタンス

    jmsDestination

    必須。javax.jms.Destinationのインスタンス

    messageConsumers

    com.fatwire.cs.core.buffering.IMessageConsumer実装のリスト。

    注意:

    BufferConfig.xmlを構成する際には、activemq-all.jarWebCenter Sites Webアプリケーションのクラスパス(例: WEB-INF/lib)に追加します。

  3. RESTアセット・サービス<BaseURI>/sites/ <sitename>/types/<assettype>/assets/<id>を起動する場合は、buffer=trueを指定します。

    注意:

    バッファリングを使用すると、PUTおよびPOST操作の結果がレスポンスで返されません。かわりに、空のペイロードが送信されます。開発者は、クライアント・アプリケーションをコーディングする際にこの動作を覚えておく必要があります。

WebCenter Sitesに用意されているデフォルトのBufferingConfig.xmlファイルには、Apache ActiveMQ用のサンプル構成が含まれています。BufferingConfig.xmlファイルは、リモートSatellite Serverのメッセージ・コンシューマのリストが空である点を除いて、WebCenter SitesとリモートSatellite Serverで同じです。