7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

SnapDish画像配信サーバーとアップロードについて

Last updated at Posted at 2015-02-13

料理写真をs3へ移行したので、再度、簡単に構成をまとめてみた。
この構成で月間数千万(まだ億には届いていない、行きたい)単位の画像を大中小を配信している。

構成

項目 内容
エッジ Cloudfront
オリジン リサイズ用途 c3.large x 2
フィルター nginx_image_filterを使用

Screen Shot 2015-02-13 at 12.07.49 PM.png
GridFSを一時保存に使っているのは、過去の遺産でいずれS3へ移動する予定。

画像のアップロード

  • クライアントからAPPサーバー経由で画像をアップする
  • アップロードスピードを体感てアップするために、一時保存領域に、先に画像をアップしておく
  • 一時領域にアップが完了しIDを取得したら、画像以外とそのIDをアップしs3へ画像を移動する

画像の取得

  • クライアントからCloudfrontに画像をリクエスト
  • Cloudfrontからフィルターサーバー画像を取得しにいき、Expiresは3時間に設定
  • 投稿直後の約3時間がアクセスが多いので3時間に設定
  • フィルターサーバーのプロキシ経由でs3にある画像を取得しに行き、リサイズして返す
  • 画像が無ければ404へ

課題

  • Cloudfrontの費用をもっと抑えたい
  • Appサーバー経由でアップロードする箇所を見直したい
  • キャッシュのコントロールをもう少し整理したい

など、他にも考えるところがありそう

7
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?