私はランプ環境を使用しています、
クライアントがCDNを使用する準備をしたい場合、サイトの開発中に注意する必要があることは何ですか?
ありがとう
おそらく最も簡単なのは、静的アセット (通常は画像、JavaScript、および CSS) を簡単にキャッシュして移動できるようにすることです。これは、相対 URL ( のようなもの/images/graphics/someimage.png
) を受け取り、それを静的サーバー ( http://static.example.com/images/graphics/someimage.png
) へのリンクに変換する特別なテンプレート関数を使用して行いました。
これを行う関数があり、それを使用してすべての静的アセット URL を生成すると、後でこれらのアセットを別のサーバーに移動したり、ジオロケーションに基づいて別のサーバーに移動したりするのは簡単になります。
CDNというのは、コンテンツ配信ネットワーク(Akamai など) のことですか? もしそうなら、答えは「場合による」です。
使用するサービスによって異なります。各サービスにはさまざまな機能があります。Akamai には、あらゆる種類の楽しいことを実行できる完全な API があります。東海岸と西海岸のサーバーで地理的な DNS トリックのみを行うものもあります。その中間にあるものもあります。
また、サービスを何に使用するかによっても異なります。画像ホスティングだけですか?ファイルのダウンロード?ストリーミングコンテンツ?
動的ページをキャッシュすることもできます。これにより、パフォーマンスが大幅に向上しますが、パーソナライズされたデータを含むページはキャッシュできないことに注意してください。
たとえば、1 時間ごとに更新されるニュース ページがあるとします。10 分の TTL (Time-To-Live) で CDN にキャッシュできます。これにより、ページ時間が短縮され、サーバーの負荷が軽減されます。
ただし、バナーに「ようこそ、ユーザー名」などのパーソナライズされたデータがある場合、訪問者に間違ったデータを提供するため、ページ全体をキャッシュすることはできなくなります。
これを回避する 1 つの手法は、パーソナライズされたデータを別のフォルダー内の別のページ フラグメントに配置し、AJAX によってロードして、このフォルダーがキャッシュされないようにすることです。