Dynamics Mediaを使用したブラウザーキャッシュでの即時イメージ有効期限の把握と解決
Web サイト上の画像が使用可能であるにもかかわらず、表示されなくなったり読み込まれなかったりする場合について説明します。 この記事では、なぜこれが起こるのか、およびコンテンツ配信ネットワーク(CDN)とTTL (Time-To-Live)の設定がどのように役割を果たすのかを探ります。
説明 description
環境
Adobe Experience Manager
問題/症状
Dynamics メディアを使用すると、ブラウザー内の画像の有効期限が直ちに切れます。
Dynamics Mediaを介して提供される画像は、ブラウザーですぐに期限切れになり、効果的なキャッシュが不足しているため、オリジンサーバーに対する過度のIf-Modified-Since (IMS)要求とパフォーマンスの問題が発生します。
解決策 resolution
画像が期限切れになるのを防ぐには、CDN キャッシュとTTL設定を最適化することが重要です。
-
<cache:header-update.allow>on</cache:header-update.allow>メタタグを実装して、304応答を受信したときに、キャッシュされた応答のキャッシュディレクティブヘッダーを更新するようCDNに促します。 -
<キャッシュ :header-update.max-frequency>メタデータタグを使用して、CDN キャッシュ内のヘッダー更新の頻度を調整し、キャッシュの上書きを過度に防ぎます。 -
即時有効期限を防ぎ、ブラウザーキャッシュの利用を最適化するために、「期限切れ」ヘッダーが将来の日付で設定されていることを確認します。
-
CDNとブラウザーのキャッシュ動作を監視して、画像が正確なヘッダーで配信されることを確認し、オリジンサーバーへの不要なトラフィックを効果的に最小限に抑えます。
これらの設定を調整し、有効期限ヘッダーがTTL設定に合致するようにすることで、オリジンサーバーへの不要なIMS要求を最小限に抑えることができ、ブラウザーキャッシュ内の画像の可用性を長引かせることができます。
原因
Dynamics Mediaでは、特定の画像の有効期限を設定できます。 画像のTTLが通過すると、IMS リクエストがオリジンに対してトリガーされます。 オリジンサーバーがこれに対して304応答(変更されていない)を送信すると、画像は「Expires」ヘッダー(変更された場合)とともに更新されます。
以前は、CDNの静的TTLは10時間でしたが、「Expires」ヘッダーはCDNのキャッシュに影響を与えませんでした。 しかし、この動作は、画像がCDN TTLまたは「Expires」ヘッダーで期限切れになると、ヘッダーと共に再度更新されるように変更されました。 簡単に言えば、「Expires」ヘッダー時間が設定されたTTLよりも短い場合は、CDNのTTLを上書きするようになりました。
このCDN設定の変更の影響として、コンテンツの有効期限が短いオリジンサーバーに対して、より頻繁にIMS要求が行われるようになりました。