質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

2800閲覧

AWSのCloudfrontに関して

MasakazuFukami

総合スコア1869

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

4グッド

2クリップ

投稿2016/02/12 07:54

編集2016/02/12 08:24

いつもお世話になっております。

AWSのCloudFrontに関してお聞きしたいです。

CloudfrontはユーザーがS3にある画像にアクセスするとCloudFrontにキャッシュがたまり、二度目以降のアクセスではS3まで行かずCloudFrontから画像を取得してくれます。

しかし、ユーザーがその画像にアクセスする前にCloudFront上にキャッシュを作成しておき、ユーザーにとって一度目のアクセスでcloudfrontのキャッシュを読みこませるようにしたいと思っています。

よくあるのが画像をアップロードする際にキャッシュを作成する方法だと思うのですが、
プロキシサーバ(IPは日本)を介して画像にアクセスし、キャッシュをためたいです。

しかし、同じmacで二度アクセスすると画像のheaderにHit from Cloudfrontとなりキャッシュから読み込んでいるのですが、
日本にあるプロキシサーバで画像を読み込んだ後に(curl や mechanizeで)、日本にあるmacで同じ画像を読み込むとMiss from cloudfrontとなってしまい、キャッシュではなくS3から読み込まれます。

以下、検証内容です。

【検証:ある画像へ二度アクセスしてHit from Cloudfrontなのか見る】 日本macでアクセス→日本mac(同じmac or 違うmac)で再度アクセス→(Hit from Cloudfront) 日本macでアクセス→プロキシサーバ(IPは日本)でアクセス→(Miss from Cloudfront) プロキシサーバ(IPは日本)でアクセス→同じプロキシサーバ(IPは日本)でアクセス→(Hit from Cloudfront) プロキシサーバ(IPは日本)でアクセス→違うプロキシサーバ(IPは日本)でアクセス→(Miss from Cloudfront) プロキシサーバ(IPは日本)でアクセス→日本macでアクセス(Miss from Cloudfront)

こちらで考えた原因としては

・そもそもプロキシサーバからアクセスしてもcloudfrontにキャッシュがたまらないのではないのか ・日本からアクセスしているが実際は異なるエッジロケーションのcloudfrontにアクセスしておりキャッシュが溜まっていないのではないか

と考えています。

どなたかご教授いただけないでしょうか。
よろしくおねがいいたします!

izkn, rossi46hiro, hato_pato, sonor_3rd👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

CloudFront のエッジロケーションは東京に 2つ、大阪に 1つあるようです。

日本からアクセスしているが実際は異なるエッジロケーションのcloudfrontにアクセスしておりキャッシュが溜まっていないのではないか

その可能性はありますね。

また、推測ですが、ドキュメントの「デバイス検出」の段落に、ユーザーエージェントヘッダーによってデバイスの種類を判定しているとありますので、デバイスの種類ごとに区別してキャッシュしている可能性も考えられます。

投稿2016/02/12 09:30

TaichiYanagiya

総合スコア12146

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

MasakazuFukami

2016/02/12 09:33

回答有り難うございます! ということはmechanizeなどで画像にアクセスする際にchromeなどのrequest headerを偽装することができればキャッシュが貯まる可能性があるということでしょうか。。。 また、日本の場合3箇所なのですが、アメリカの場合21箇所くらいありまして、 全アメリカのユーザーに初回アクセス時にキャッシュを読み込んでもらうとしたら21箇所分リクエストを送らなければいけないとうことでしょうか。
MasakazuFukami

2016/02/12 10:16

なるほど。。。 chromeで調べてたrequest headerになるべく近づける形でやってみます! ありがとうございます!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問