コンテンツ・アイテム、デジタル・アセットおよびサイトの配信では、ビジターのブラウザ・キャッシュを完全に活用し、ブラウザでのコンテンツ配信とレンダリングのパフォーマンスを改善する必要があります。
サイト、テーマ、コンテンツ・アイテムおよびデジタル・アセットは、ビジターのブラウザ・キャッシュ内に一定時間キャッシュされます。サイト、テーマ、コンテンツ・アイテムまたはデジタル・アセットが更新された後、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コンテンツはキャッシュされません。