4

画像リサイザーを使用して、Web サイトで画像を出力しています。現在の状況で CDN を使用することは可能ですか?

画像リサイザーは、画像のファイル パスを取得し、目的の画像を出力します。現在、CDN を使用している場合でも、画像リサイズ スクリプトはサーバーでホストされています。したがって、すべての画像リクエストは私のサーバーを通過します。CDN を使用すると何らかのメリットがありますか?

4

3 に答える 3

1

CDN 上のキャッシュされたオブジェクトは、要求 URI に基づいているため、アプリケーションが URL にランダム性を生成していない場合は、CDN を利用する必要があります。画像リクエストが次のようになっている場合

/resizer/200x100/thing.jpg
# ...or...
/resizer/thing.jpg?size=200x100

その後、CDN は後続のすべてのリクエストのためにそれをキャッシュします。

于 2012-06-12T18:04:03.490 に答える
0

あなたのサーバーとスクリプトが十分に速いなら、私はあなたのサーバーコードを使うでしょう。これは、カスタム関数を追加する必要がある場合に、スクリプトをいじることができることを意味します。深刻な問題がある場合、またはCDNが提供する可能性のあるより多くのオプションが必要な場合は、切り替えてください。

于 2012-06-12T17:57:16.390 に答える
0

簡単な答え: いいえ。サーバーがオンザフライで画像のサイズを変更する場合、それは依然としてボトルネックとなり、CDN の利点は本質的に失われます。

快適に使用できる 3 つのソリューション:

  1. 画像のアップロード時に画像サイズ変更スクリプトを 1 回実行し、必要なすべての画像サイズを作成してから、すべてを CDN に論理的な方法で保存します。(合理的な解決策。欠点:非常に厳格で、新しい画像サイズを追加するにはかなりの作業が必要です)。

  2. リクエストに応じて画像サイズ変更スクリプトを実行します (つまり、1 つの画像のサイズを変更して CDN にアップロードします)。ただし、画像が CDN にまだ存在しない場合に限ります。(作成された画像のリストをデータベースに保存するか、できればオブジェクト表記のデフォルトの画像手法を使用することをお勧めします) (クールなソリューション。欠点: 古いブラウザは object タグを好みません。標準ではありませんが、有効、コード)。

  3. CDN を切り替えて、API 経由でメディア ファイルを操作できる、より成熟した CDN サービスを使用します。例: http://cloudinary.com/ (スムーズなセーリング ソリューション。欠点: 非インテリジェントな CDN ほど安くはありませんが、ほとんどの場合、それをほとんど感じないはずであり、大量のコーディングを節約できます)。

これがお役に立てば幸いです。あなたが選んだソリューションをぜひお聞かせください。

于 2013-01-17T21:53:08.617 に答える