Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AmazonCloudFrontで始めるお手軽簡単CDN
Search
濱田孝治
April 19, 2018
Technology
2
2.3k
AmazonCloudFrontで始めるお手軽簡単CDN
あなたのWebサイトも月◯◯円で爆速化できちゃうかも?
濱田孝治
April 19, 2018
Tweet
Share
More Decks by 濱田孝治
See All by 濱田孝治
ObservabilityCON on the Road Tokyoの見どころ
hamadakoji
0
360
製造現場のデジタル化における課題とPLC Data to Cloudによる新しいアプローチ
hamadakoji
0
520
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
3
1.9k
20分で完全に理解するGrafanaダッシュボード
hamadakoji
5
3.1k
GuadDutyによるコンテナランタイム脅威検知にすべて〜その凄さと設定注意点と検知の様子をまるっとお届け〜
hamadakoji
4
1.4k
re:Invent2023で体験したIoT面白ワークショップ〜お絵描き2Dロボットの構築〜
hamadakoji
0
810
今改めて見直してみるラズパイの真価
hamadakoji
1
650
40分1本勝負 VPoE ハマコーvs20人の悩めるエンジニアリングマネージャー
hamadakoji
0
87
AWSの次世代プロセッサ Graviton2(Arm64)をLambdaとFargateで使うために考えるべきこと
hamadakoji
3
2.1k
Other Decks in Technology
See All in Technology
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
170
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
2.9k
Platform Engineeringで クラウドの「楽しくない」を解消しよう
jacopen
4
120
【詳説】コンテンツ配信 システムの複数機能 基盤への拡張
hatena
0
280
どちらかだけじゃもったいないかも? ECSとEKSを適材適所で併用するメリット、運用課題とそれらの対応について
tk3fftk
2
240
IAMポリシーのAllow/Denyについて、改めて理解する
smt7174
2
210
What's new in Go 1.24?
ciarana
1
110
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
210
入門 PEAK Threat Hunting @SECCON
odorusatoshi
0
170
データベースの負荷を紐解く/untangle-the-database-load
emiki
2
540
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
7
3.2k
【内製開発Summit 2025】イオンスマートテクノロジーの内製化組織の作り方/In-house-development-summit-AST
aeonpeople
2
1.1k
Featured
See All Featured
Speed Design
sergeychernyshev
27
810
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Fireside Chat
paigeccino
35
3.2k
A Philosophy of Restraint
colly
203
16k
Git: the NoSQL Database
bkeepers
PRO
428
65k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
380
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Transcript
1 2 A 4 41 8/0 9 A
2 70 • 1 • 9 I • @ 2
•
4
5 1 → 3 32 ↑
6 1 → 3 1 → 5
1 → 6 32 ↑ 90 ↑ 106%↑
7 1 → 3 1 → 5
1 → 6 1 → 7 1 → 10 32 ↑ 90 ↑ 106%↑ 113%↑ 123%↑
8 Web X Y New
Industry Benchmarks for Mobile Page Speed - Think With Google https://www.thinkwithgoogle.com/marketing-resources/data-measurement/mobile-page-speed-new-industry-benchmarks/
9 1 3 32%
1 5 90% 1 6 106% 1 7 113% 1 10 123%
10
10 " !
11 ! Web
12 C F D
13 l C l l CA l F l
C l C
14 Web
15 Web 1.
16 Web 1.
17 Web 1. 2.
18 Web 1. 2.
19 Web 1. 2.
3.
21 Web 1. 2.
3.
22 Web 1. 2.
3. ! !
23
24 Web Client Internet Web App Database
25 Client Internet Web App Database •
• Akamai •CloudFront •Cloud Flare • Nginx • Apache mod_cache • APCphp • API Gateway response cache • Amazon ElastiCache • redis • Memcached • Amazon DynamoDB Accelerator DAX
26 AWSConsole Amazon CloudFront Edge
27 CDN CloudFront
28 CDN CloudFront
29 CDN ! $"% # CloudFront
&
30 Web 1. 2.
3. ! !
31 Web 1. 2.
3. ! ! AmazonCloudFront
32 Amazon CloudFront
33 Amazon Cloud Front + Contents Delivery Network)CDN* % %
( ! "# $' &
34 %"Contents Delivery Network • Akamai • &
CDN $ • CloudFlare • !CDN WordPress# • Google Cloud CDN • GCP CDN
35 AmazonCloudFront41 .:2 '7( 36*58=;%%<),9 CloudFront #%&
ClientA ClientB ②%%+0 ③<) ①# ④# ⑤ ! <) '7($&"%/-
36 AmazonCloudFront&" ClientA ① DNS )$ DB '%+ *!
②IP ,xxx.cloudfront.net- )$ DB DNS ③%+Edge #( ④%+Edge CloudFront
37 AmazonCloudFront 2456 114
38
39 CloudFront ① EC2 ② EC21RDS
③ EC2RDS
40 ① ①EC2
41 ① CloudFront Client Route 53 www.example.com EC2
ELB
42 4-)① CloudFront4-5B+2C Client Route 53 www.example.com A<(#(" EC2 ELB
CloudFront '( 3 (#(". CloudFront %!& → D1*@ CloudFront!%!&) $A<(#("?, /;67> EC2D0:8 10 9=
43 ;52#① CloudFront;5<QH8R Client Route 53 www.example.com OG 1(1' CloudFront
CloudFront OG 1(1' .&"/:B !$ AN6E>P S3OG+0,#(17? @9 S3 OG+06E>PS3 IL *+2-1#MD Q3F4%# !)R=JCloudFront;5CK
44 ② ②EC2RDS
45 ② CloudFront Client Route 53 www.example.com ELB
EC2 RDS
46 0)%② CloudFront0)1 Client Route 53 www.example.com +7$$ ELB EC2
RDS CloudFront=7%+7% &; ! !8/ .5 >1:? CloudFront #%"$4( 2< 329CloudFront %$4-*6 ',
47 ③ ③EC2RDS
48 ③ CloudFront Client Route 53 www.example.com
ELB App RDS App App img wp- content/uploads/ NFS EC2
49 0)&③ CloudFront0)1 CloudFront Client :6%% *6%% ELB EC2 RDS
php jpg png js css Route 53 www.example.com S3 :6%% 5( $ S337 #&!%- 2 + *6%% " & 9/8. 4 ,'
50 ③ • WordPress& S3 #(!"$ • % )StaticPress
S3 WP Offload S3 Lite* • goofys'Linux→S3 %
51 '! ③ CloudFront'!( CloudFront Client /, $, ELB EC2
RDS S3 Route 53 www.example.com 2 S3Bucket + UploadsC S S JavaScript ◯ /wp-includes /wp-content Custom Origin WordPress*) $, HTML △0.#,1 /login.php /wp-admin Default(*) CloudFront-%"&
52
53 • CDN $%C 9 />KH • GET/HEAD/OPTION (<I •
URLB $%@L=;8F • +-!&,AF 6E"- J08F • Header / Cookie / Query Strings URL ?57 +-!&,AF '#-1 :2.G $%34D $%,*-)AF
54 %#&"*-31,%%4 • + 2 0 TTL
/( • HTTP& !!% & $& • . ')/( OK
55 *+2"03/BHO8F2!2 P • .23$ ; HeaderCookie Query Strings&13# 8F(3
M5 ;> • URL%C G *+2"03/: H • Whitelist6E '.3,284 = I %-)3&13# * +@7DE • *+ 2!2 .2 J 5?L9 M5NK9A<
56 )-1 ,2 • + . - Amazon CloudFront
• https://aws.amazon.com/jp/cloudfront/dynamic- content/ • CloudFront # %/$!1'(02 • https://docs.aws.amazon.com/ja_jp/AmazonCloudFro nt/latest/DeveloperGuide/Expiration.html • Amazon CloudFront (/ (2015"6&*) • https://dev.classmethod.jp/cloud/cloudfront-cache- control/
57
58 5;4627>-=71? 5;8/ CloudFront< IP"' *< .,CloudFront
CloudFront Client +9(!( ELB EC2 RDS CloudFront$%!&)#:0 CloudFront IP"'*<13
59 $ &#"1' CloudFront CloudFrontAWS WAF IP % ELB
EC2 RDS WAF IP % Client WAF !
60 4<3 526A.@6CB CloudFront Client CloudFront IP%9/1 ELB+ !#$(
;0 ELB EC2 RDS )7* &("'=: IP%9/1 WAF ELB !#$( IP %,>? -8''
61 1;0 3/5=928?> CloudFront( ! $:,. WAF ! $
ELB < :, CloudFront Client *6## ELB EC2 RDS CloudFront( &) +27- ! $" ' % WAF WAF &) +4! $'%" ELB < WAF
62 CloudFront
63 https://aws.amazon.com/jp/cloudfront-cdn/
64 https://aws.amazon.com/jp/cloudfront-cdn/
65 https://classmethod.jp/services/members/
66 https://classmethod.jp/services/members/
66 https://classmethod.jp/services/members/
67
68 • CDNCContents Delivery NetworkDWeb &?84/A7:<9; • Amazon
CloudFront2< @=- % -$ 3=-%-$*#+ 6> • , )"#')-(.!1 CloudFront 50 B