キャッシュの利用によるパフォーマンスの向上

コンテンツ・アイテム、デジタル・アセットおよびサイトの配信では、ビジターのブラウザ・キャッシュを完全に活用し、ブラウザでのコンテンツ配信とレンダリングのパフォーマンスを改善する必要があります。

サイト、テーマ、コンテンツ・アイテムおよびデジタル・アセットは、ビジターのブラウザ・キャッシュ内に一定時間キャッシュされます。サイト、テーマ、コンテンツ・アイテムまたはデジタル・アセットが更新された後、URL内のキャッシュバスター・キーが変更され、ブラウザが異なるURLをフェッチし、新しいアイテムを取得しなくてはならないようになります。

キャッシュ・キーは、現在のソースのみを参照することによってブラウザ・キャッシュの使用を管理する上で役に立ちます。キャッシュ・キーはURLに含まれていますが、たいていの場合、物理的な場所(フォルダ)ではなく、論理要素です。キャッシュ・キーの変更が、リソースを検索するために異なる物理的な場所を指し示すことはありません。この変更は単に、リソースの現在のバージョンをフェッチするようサーバーに通知します。

リソースには、CSSファイル、JSファイルおよびイメージ・ファイルなどの静的なもの、またはページ・データ、サイト・データおよびコンテンツ・アイテム・データなどの動的なものがあります。Webサイトを構築するためのリソースには5つのカテゴリがあります:

  • 製品リソース – 製品の新規バージョンがリソースまたはパッチ適用されるたびに更新される製品の一部であるリソース。

  • サイト・リソース – structure.json・ページ・データおよびイメージなど、サイトの一部であるリソース。これらは、サイトが公開されるときに更新されます。コントローラについては、後に続く本文を参照してください。

  • テーマ・リソース – レイアウト、CSSおよびイメージなど、テーマの一部であるリソース。これらは、テーマが公開されるときに更新されます。

  • コンポーネント・リソース – カスタム・コンポーネントの一部であるリソース。これらには、コンポーネントを構成するHTMLファイル、JSファイル、CSSファイルおよびイメージ・ファイルが含まれます。これらは、コンポーネントが公開されるときに更新されます。1つのコンポーネントが変更されて再公開される場合、すべてのコンポーネントのキャッシュ・キーが変更されますが、これは、キャッシュ・キーがすべてのコンポーネントの単一キーであるからです。

  • CaaSリソース – コンテンツ・アイテムおよびデジタル・アイテムを提供するリソース。これらは、コンテンツ・アイテムが公開または再公開される場合、またはコレクション・ターゲットが変更されるときに更新されます。

次のトピックでは、Oracle Content Managementのランタイムおよびサイト・ビルダーのキャッシュについて説明します:

ランタイム・キャッシュ

ランタイムの場合、Oracle Content ManagementのCache-Controlヘッダーは15日間に設定されます。すべてのリソースについてURLにキャッシュ・キーが追加されます。

URLが同じである限り、ブラウザでは、ローカル・キャッシュ(使用可能である場合)内のリソースを提供します。リソースが更新されると、URL内のキャッシュ・キーが更新され、その結果、ブラウザは、サーバーに対する新しいリクエストを行い、ローカル・キャッシュを更新するよう強制されます。

キャッシュ・キーが含まれるコントローラも1分間キャッシュされます。このため、更新されたキャッシュ・キーが最大1分間表示されなくなります。

ランタイム時に、サーバーは、製品、サイト、テーマ、コンポーネントおよびCaaSリソース用の最新のキャッシュ・キーを使用してcontroller.htmlを返します。キーが含まれるスクリプトがcontroller.htmlに追加されます。次に例を示します:

<script type="text/javascript">
        var SCSCacheKeys = {
                        product: '123',
                        site: '456',
                        theme: '789',
                        component: '012',
                        caas: '345'

        };

</script> 

これらのキーがcontroller.jsによって使用され、次の表内のようなURLが構築されます。

リソース・タイプ
製品リソース
/sitePrefix/productCacheKey/_sitesclouddelivery/...
/mySite/_cache_947d/_sitesclouddelivery/
テーマ・リソース
/sitePrefix/themeCacheKey/_themesdelivery/themeName/...
コンポーネント・リソース
/sitePrefix/compCacheKey/_compdelivery/compName/...
サイト・リソース
/sitePrefix/siteCacheKey/content/...
/sitePrefix/siteCacheKey/structure.json
/sitePrefix/siteCacheKey/pages/100.json
CaaSリソース
RegularCaaSUrl?cacheKey=caasCacheKey

このようにキャッシュ・キーをURLに挿入することにより、Oracle Content Managementは、URLを効率的に変更し、ブラウザがURLを実際に新しいリリースであると見なすようにすることにより、更新済リソースをロードするようブラウザに強制できます。

注:

セキュアなサイトの場合、製品、テーマおよびコンポーネント・リソースのみがキャッシュされ、サイトまたはCaaSコンテンツはキャッシュされません。

サイト・ビルダーのキャッシュ

サイト・ビルダーでは、静的リソースは15日間キャッシュされます。

サイト・ビルダーを使用する場合、製品リソース、テーマ・リソースおよびコンポーネント・リソースのキャッシュが行われます。(サイト・リソースおよびCaaSリソースでは行われません。)サイト・ビルダーの起動またはリフレッシュ時にテーマおよびコンポーネントのキャッシュ・キーが再生成されます。

テーマまたはコンポーネントを変更し、その変更がサイト・ビルダーで表示されるようにするには、サイト・ビルダーをリフレッシュする必要があります(F5)。