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
Lambda@Edgeを利用したサードパーティJavaScriptのカナリアリリース / Ca...
Search
Edward Fox
May 28, 2021
Technology
130
0
Share
Lambda@Edgeを利用したサードパーティJavaScriptのカナリアリリース / Canary release using Lamdba@Edge
2021-05-28 @AWS Dev Alliance
Edward Fox
May 28, 2021
More Decks by Edward Fox
See All by Edward Fox
Priorityを制するものはローディングを制す
edwardkenfox
4
810
AWS re:Invent 2019 / Hackathon for Good 参加録
edwardkenfox
2
630
Repro basketball club
edwardkenfox
0
290
Introduction to UX Optimizer
edwardkenfox
0
140
フロントエンド開発の落とし穴 / Fallacies of Client Side Programming (2019ver)
edwardkenfox
0
370
僕とprototypeとJSONで / Me and prototype down by the JSON
edwardkenfox
0
180
クライアントサイド開発の落とし穴 / Fallacies of Client Side Programming
edwardkenfox
0
510
Beacon API ことはじめ 〜そしてkeepalive fetchへ〜 / Beacon API The Basics
edwardkenfox
0
1.2k
window.windowとは何か / What is window window
edwardkenfox
1
270
Other Decks in Technology
See All in Technology
AI時代から振り返るTerraform drift運用の歴史 / AI Age Reflections on the History of Terraform Drift Operations
aeonpeople
2
630
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
310
運用を見据えたAIエージェント設計実践
amacbee
0
700
もりもり新機能を一挙紹介! AgentCoreに入門して、AWS上にAIエージェントを構築しよう
minorun365
PRO
6
580
地元にいないローカルオーガナイザーの立ち回り
uvb_76
1
420
AI時代の私の技術インプットとアウトプット術
tonkotsuboy_com
15
8.1k
AI フレンドリーなエラー監視を TypeScript で実現する
shinyaigeek
2
200
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
1
660
食べログのサーキットブレーカー導入を振り返って
atpons
1
160
Javaで学ぶSOLID原則
negima
1
250
AIが変えた"品質の守り方"
kkakizaki
13
5.5k
大学生が本気でDatabricksを活用してDiscordサークルをデータ駆動させてみた
phantomjuju
1
310
Featured
See All Featured
Mind Mapping
helmedeiros
PRO
1
220
Information Architects: The Missing Link in Design Systems
soysaucechin
0
950
Fireside Chat
paigeccino
42
3.9k
For a Future-Friendly Web
brad_frost
183
10k
Ethics towards AI in product and experience design
skipperchong
2
290
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
560
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
The Pragmatic Product Professional
lauravandoore
37
7.3k
Color Theory Basics | Prateek | Gurzu
gurzu
0
320
KATA
mclloyd
PRO
35
15k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Speed Design
sergeychernyshev
33
1.8k
Transcript
Lambda@Edge Λར༻ͨ͠ αʔυύʔςΟJavaScriptͷ ΧφϦΞϦϦʔε Edward Fox 2021/05/28 @AWS Dev Alliance
@edwardkenfox Edward Fox ɾΤϯδχΞ @ Reproגࣜձࣾ ɾWEBʗϒϥβٕज़શൠɺࢄॲཧ ɾόεέɺϏʔϧɺӉ 2/52
ࠓ͢͜ͱ: Lambda@Edge Λར༻͠ ҆શͳܗͰϦϦʔε͕Ͱ͖Δ Α͏ʹͳͬͨ 3/52
ࠓ͞ͳ͍͜ͱ: Lambda@Edge ͷػೳհ ͳͲ 4/52
1. αʔυύʔςΟJavaScriptͱ 2. ϦϦʔεͷ 3. ΧφϦΞϦϦʔε ͱ 4. Lambda@Edge Ͱͷ࣮ݱํ๏
5. ݁Ռ 6. AWS ͞Μͷཁ 5/52
1. αʔυύʔςΟJavaScriptͱ 2. ϦϦʔεͷ 3. ΧφϦΞϦϦʔε ͱ 4. Lambda@Edge Ͱͷ࣮ݱํ๏
5. ݁Ռ 6. AWS ͞Μͷཁ
αΠτʹຒΊࠐΜͰΒ͍ σʔλΛऩूͨ͠Γૹ৴͢Δ αʔυύʔςΟͷJavaScriptίʔυɻ Google Analyticsʹද͞ΕΔΑ͏ͳ λάࠂܭଌπʔϧ͕͜Εʹ͋ͨΔ 7/52
※ ฐࣾͰఏڙ͍ͯ͠Δ αʔυύʔςΟJavaScript Web SDKͱݺΕ͍ͯ·͢ 8/52
※ ࣮ࡍͷͷͱҟͳΓ·͢
Web SDK ʹมߋ͕͋Δͨͼʹ ϦϦʔεΛ࣮ࢪ͢Δ͕ repro-sdk.min.js ৗʹ ࠷৽όʔδϣϯΛࢀর͢Δ 10/52
None
1. αʔυύʔςΟJavaScriptͱ 2. ϦϦʔεͷ 3. ΧφϦΞϦϦʔε ͱ 4. Lambda@Edge Ͱͷ࣮ݱํ๏
5. ݁Ռ 6. AWS ͞Μͷཁ
৽͍͠όʔδϣϯΛϦϦʔε ͢Δͱ ଈ࣌ͯ͢ͷ ΫϥΠΞϯτͰಈ࡞Λ࢝ΊΔ 13/52
👍 ɾ͕͋ͬͨΒ͙͢ʹؾ͚Δ 👎 ɾ͕͋ͬͨͱ͖ͷඃ͕ਙେ 14/52
ڪාͷҰٿೖࠢϦϦʔε 😇 15/52
༷ʑͳϒϥβΣϒαΠτͰ ಈ࡞͢ΔαʔυύʔςΟ JavaScriptͱ͍͏ੑ࣭తʹɺ ΫϥΠΞϯτґଘͰى͖ΔΛ ͯ͢ࣄલʹ༧ଌ͢Δ͜ͱࠔ
=> ຊ൪ʹग़ͯ͠Έͳ͍ͱ ͔Βͳ͍ɻ ͰͳΔ҆͘શʹग़͍ͨ͠ 17/52
ͦΜͳͱ͖ͷͨΊͷ ΧφϦΞϦϦʔε 🐧 🐧 🐧 18/52
1. αʔυύʔςΟJavaScriptͱ 2. ϦϦʔεͷ 3. ΧφϦΞϦϦʔε ͱ 4. Lambda@Edge Ͱͷ࣮ݱํ๏
5. ݁Ռ 6. AWS ͞Μͷཁ
https://martinfowler.com/bliki/ CanaryRelease.html ͔ΒҾ༻ 20/52
1. 2. 3.
22/52
Web SDKʹ͓͚Δ ΧφϦΞϦϦʔεͷཁ݅ 23/52
1. Web SDKʹର͢ΔτϥϑΟοΫશମʹରͯ͠ ภΓͳ͘৽چόʔδϣϯΛࢄ͍ͤͨ͞ 2. ΫϥΠΞϯτ͝ͱʹ৽چόʔδϣϯΛ ͲͪΒ͔ʹݻఆ͍ͤͨ͞ 3. ৽چόʔδϣϯͷৼΓ͚ͷׂ߹Λࢦఆ ͍ͨ͠ɻ·ͨঃʑʹׂ߹Λม͍͑ͨɻ
24/52
1. αʔυύʔςΟJavaScriptͱ 2. ϦϦʔεͷ 3. ΧφϦΞϦϦʔε ͱ 4. Lambda@Edge Ͱͷ࣮ݱํ๏
5. ݁Ռ 6. AWS ͞Μͷཁ
26/52
27/52
None
1. αʔυύʔςΟJavaScriptͱ 2. ϦϦʔεͷ 3. ΧφϦΞϦϦʔε ͱ 4. Lambda@Edge Ͱͷ࣮ݱํ๏
5. ݁Ռ 6. AWS ͞Μͷཁ
1. Web SDKʹର͢ΔτϥϑΟοΫશମʹରͯ͠ ภΓͳ͘৽چόʔδϣϯΛࢄ͍ͤͨ͞ 2. ΫϥΠΞϯτ͝ͱʹ৽چόʔδϣϯΛ ͲͪΒ͔ʹݻఆ͍ͤͨ͞ 3. ৽چόʔδϣϯͷৼΓ͚ͷׂ߹Λ ࢦఆ͍ͨ͠ɻ·ͨঃʑʹׂ߹Λม͍͑ͨɻ
30/52
1. Web SDKʹର͢ΔτϥϑΟοΫશମʹରͯ͠ ภΓͳ͘৽چόʔδϣϯΛࢄ͍ͤͨ͞ 2. ΫϥΠΞϯτ͝ͱʹ৽چόʔδϣϯΛ ͲͪΒ͔ʹݻఆ͍ͤͨ͞ 3. ৽چόʔδϣϯͷৼΓ͚ͷׂ߹Λ ࢦఆ͍ͨ͠ɻ·ͨঃʑʹׂ߹Λม͍͑ͨɻ
30/52 👌👌👌
1. Web SDKʹର͢ΔτϥϑΟοΫશମʹରͯ͠ ภΓͳ͘৽چόʔδϣϯΛࢄ͍ͤͨ͞ 2. ΫϥΠΞϯτ͝ͱʹ৽چόʔδϣϯΛ ͲͪΒ͔ʹݻఆ͍ͤͨ͞ 3. ৽چόʔδϣϯͷৼΓ͚ͷׂ߹Λ ࢦఆ͍ͨ͠ɻ·ͨঃʑʹׂ߹Λม͍͑ͨɻ
30/52 👌👌👌 👌👌
1. Web SDKʹର͢ΔτϥϑΟοΫશମʹରͯ͠ ภΓͳ͘৽چόʔδϣϯΛࢄ͍ͤͨ͞ 2. ΫϥΠΞϯτ͝ͱʹ৽چόʔδϣϯΛ ͲͪΒ͔ʹݻఆ͍ͤͨ͞ 3. ৽چόʔδϣϯͷৼΓ͚ͷׂ߹Λ ࢦఆ͍ͨ͠ɻ·ͨঃʑʹׂ߹Λม͍͑ͨɻ
30/52 👌👌👌 👌👌 👌
1. αʔυύʔςΟJavaScriptͱ 2. ϦϦʔεͷ 3. ΧφϦΞϦϦʔε ͱ 4. Lambda@Edge Ͱͷ࣮ݱํ๏
5. ݁Ռ 6. AWS ͞Μͷཁ
None
None
ຖճίʔυΛॻ͖͑ͳ͚Ε ͍͚ͳ͍ͷ໘ 37/52
=> ͦ͏ͩɺڥมΛ͓͏ 38/52
None
None
None
None
😱 😱 😱 43/52
ཁ1: ڥมͷαϙʔτ 🙏 44/52
None
None
None
🤔 🤔 🤔 48/52
ཁ2: UIͷվળ 🙏 49/52
·ͱΊ 50/52
ɾLambda@Edge Λར༻ͯ͠ΧφϦΞ ϦϦʔεΛ࣮ݱ͠ɺ҆৺ɾ҆શͳܗͰ ϦϦʔεΛ࣮ࢪͰ͖ΔΑ͏ʹͳͬͨ ɾ͜ΕҎ֎ʹ Lambda@Edge ଟ͘ͷ Ϣʔεέʔεʹ͑ΔػೳͳͷͰɺ ࠓޙՄೳੑΛ୳͍͖͍ͬͯͨ 51/52
52/52
We are hiring!
None
None
None