27

アプリで同じ画像をさまざまなサイズで提供する必要があります。ライブラリは、S3 に保存される何万もの画像で構成されているため、同じ画像を可能なすべてのサイズで保存することは理想的ではないようです。Google で、EC2 を使用してその場で S3 画像のサイズを変更できるという言及をいくつか見ましたが、詳細な情報を見つけるのに苦労しています。誰か、より多くの情報、または理想的にはいくつかのコードサンプルの方向に私を向けてもらえますか?

ヒント

最初はわかりませんでしたが、S3 から直接アプリやウェブサイトに画像を提供することはありません。CloudFront を使用することを強くお勧めします。3 つの理由があります。

  1. コスト - CloudFront の方が安い
  2. パフォーマンス - CloudFront の方が速い
  3. 信頼性 - S3 は、1 秒間に 10 ~ 20 回以上頻繁にクエリを実行すると、リソースを提供しないことがあります。リソースがランダムに利用できなくなるため、これをデバッグするのに何年もかかりました。

S3 はコンテンツ配信サービスではなくストレージであるため、上記は必ずしも S3 の欠点ではありません。

4

2 に答える 2

14

何百もの異なるサイズについて話しているのではないと仮定して、すべての画像サイズを保存しないのはなぜですか? 保管コストは最小限です。また、アプリケーション サーバーを使用してその場で画像のサイズを変更する必要がないように、Cloudfront を介して (または S3 から直接) 画像を提供することもできます。これらの画像を大量に提供する場合、動的に画像のサイズを変更したり、Web サーバーで画像要求を処理したりする必要がないことによって節約される処理コスト (つまり、CPU サイクル、メモリ要件など) は、ストレージ コストを簡単に相殺する可能性があります。

于 2013-01-29T23:03:23.617 に答える
6

必要なのは画像サーバーです。はい、EC2 でホストできます。これらのリンクは、開始に役立つはずです: https://github.com/adamdbradley/foresight.js/wiki/Server-Resizing-Images http://en.wikipedia.org/wiki/Image_server

于 2013-01-29T05:51:15.793 に答える