CloudFrontでキャッシュされている?
AWSの料金(2017/11)で書いたような金額なんだけどCloudFrontってちゃんとキャッシュされているか確認していなかった^^;;
- 本当にキャッシュされている?
- Hit率ってどれぐらい?
- どれぐらいの容量を捌いている?
もろもろが気になったので調べてみた。
使ってはいるけど確認はしていなかったというやつ^^;;
キャッシュの有無
レスポンスヘッダのx-cacheを見たらキャッシュされているかわかります。
コマンドは
curl -svo /dev/null https://www.barasu.org/
これでOKです。
1回目(キャッシュなし)
curl -svo /dev/null https://www.barasu.org/ * Trying 54.230.108.126... * TCP_NODELAY set * Connected to www.barasu.org (54.230.108.126) port 443 (#0) (略) < cache-control: max-age=604800 < x-cache: Miss from cloudfront < via: 1.1 7727d44fd16a7a76bb8fa7045a2983b0.cloudfront.net (CloudFront) (略) * Connection #0 to host www.barasu.org left intact
2回目(キャッシュあり)
curl -svo /dev/null https://www.barasu.org/ * Trying 54.230.108.126... * TCP_NODELAY set * Connected to www.barasu.org (54.230.108.48) port 443 (#0) (略) < cache-control: max-age=604800 < x-cache: Hit from cloudfront < via: 1.1 7727d44fd16a7a76bb8fa7045a2983b0.cloudfront.net (CloudFront) (略) * Connection #0 to host www.barasu.org left intact
キャッシュにHitしている場合にはx-cache: Hit from cloudfrontって表示されるのね。
2回目からはキャッシュされるのがわかる。
これはExpireは1dayだったはず。
容量確認
どれぐらいの容量をEdge Locationから配っているかはAWS CloudFront Managementから確認できます。
Data Transferred By Destinationは下記の通り
一月のTotalがT14,453.6519 MBまじ?14GB?ちょっとおかしくない?
請求書を調べてみるとCloudFrontの転送料と料金は下記の通りだった
Edge Location | 転送量 | 転送料 |
---|---|---|
Asia Pacific | 0.234GB | $0.03 |
Australia | 0.002GB | $0.01 |
Canada | 0.014GB | $0.01 |
Europe | 0.766GB | $0.07 |
India | 0.104GB | $0.02 |
Japan | 10.179GB | $1.42 |
South America | 0.008GB | $0.01 |
United States | 2.809GB | $0.24 |
1ヶ月で14GBというのはあながち嘘ではない気がしてきた・・・
日本のEdge Locationから10GBなのね・・・
このサイトで10GBってNetwork帯域を無駄に使っている気がして大変申し訳ありません。反省・・・
うーん。画像のCDNをCloudinaryに変更しようかと思っていたけど無料プランで収まりそうだなぁ。画像だけCloudinaryというのはアリかも知れない。
CloudinaryのEdge Locationが日本にあるかわからないけど。
Hit率
Report & Analytics → Cache Statisticsで観ることができます。
11月のレポートでは下記のような感じでした。
PVは低いのに思ったよりもHit率が高い。同じページへのアクセスが多いっていうこと?
1ヶ月Totalでグラフ化したら下記の通りになった
75%以上ヒットしているように見えるんだけどこれ本当???なにか見方かグラフの作り方間違っているか心配になるぞ^^;;
このグラフ通りに75%がヒットするなら嬉しいね。