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
サーバレスアーキテクチャのパフォーマンスチューニング
Search
Kazutomo Niwa
October 22, 2016
Technology
7.9k
16
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
サーバレスアーキテクチャのパフォーマンスチューニング
JAWS Festa 東海道 2016 の登壇資料です。
こちらもご参照ください →
https://gs2.io/
Kazutomo Niwa
October 22, 2016
More Decks by Kazutomo Niwa
See All by Kazutomo Niwa
Amazon Event Bridge による次世代の Pub/Sub
kazutomo
0
2k
DynamoDB のインデックス再編事例
kazutomo
2
1k
Production-ready Amazon Event Bridge
kazutomo
2
1.1k
もうそこまで迫っている! Cloud2.0 時代の開発
kazutomo
3
1.9k
Game Server Services ではじめる サーバ開発運用しないゲーム開発
kazutomo
1
7.6k
Cloud2.0時代のゲーム開発を支えるGS2
kazutomo
1
2.2k
Unityネットワーク完全に理解した.pdf
kazutomo
3
3.4k
サーバレスアプリケーションの監視・運用
kazutomo
13
6.7k
ゼロからサーバレスの先頭に追いつこう
kazutomo
25
12k
Other Decks in Technology
See All in Technology
Chart.js が簡単に使えるようになっていたので OGP 画像生成に使った話
kamekyame
0
160
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
0
180
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
500
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development
yoshidashingo
1
360
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
50k
さきさん文庫の書籍ができるまで
sakiengineer
0
370
コードレビューを制するチームがソフトウェアデリバリーのフローを制す / Beyond Code Review: Distributing Its Responsibilities Across the SDLC
mtx2s
4
1.1k
Oracle Cloud Infrastructure IaaS 新機能アップデート 2026/3 - 2026/5
oracle4engineer
PRO
1
190
GoとSIMDとWasmの今。
askua
3
510
価格.comをAI駆動で全面刷新する ー 30年分の技術的負債を返し、次の30年の土台をつくる ー / AI Engineering Summit Tokyo 2026
tkyowa
49
52k
Agentic Web
dynamis
1
130
個人の発見を、組織の知恵に 〜生成AI活用を"探索"から"組織の仕組み"へ〜
kintotechdev
2
980
Featured
See All Featured
The Curious Case for Waylosing
cassininazir
1
370
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
For a Future-Friendly Web
brad_frost
183
10k
Paper Plane (Part 1)
katiecoart
PRO
0
8.5k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Transcript
αʔόϨεΞʔΩςΫνϟͷ ύϑΥʔϚϯενϡʔχϯά +"84 'FTUB ౦ւಓ (BNF4FSWFS4FSWJDFTגࣜձࣾ දऔకࣾ$&0୮Ӌ Ұஐ
ࣗݾհ (BNF4FSWFS4FSWJDFTגࣜձࣾ ݄ۀ දऔకࣾ$&0୮Ӌ ҰஐʢʹΘ ͔ͣͱʣ גࣜձࣾηΨೖࣾ ܞଳి͚ήʔϜɾαʔό։ൃʹैࣄ
ఱಊגࣜձࣾೖࣾ ϙέϞϯɾϚϦΦΧʔτΛ͡Ίͱͨ͠ ήʔϜαʔό։ൃɾӡ༻ʹैࣄ
Game Server Services(GS2) とは εϚϗήʔϜϒϥβήʔϜͷඞཁͱ͢Δػೳͷ͏ͪɺ • ϚονϝΠΩϯά • ϥϯΩϯά •
ϝʔϧϘοΫεʢϓϨθϯτϘοΫεʣ • ελϛφཧ ͱ͍ͬͨɺΑ͋͘ΔػೳΛ .JDSP4FSWJDFTԽ͠ɺ 4FSWFSMFTTͰઃܭɾ࣮͠ɺҰ࣌ؒԁʙͰར༻Ͱ͖Δͱ ͍͏"84ͷΑ͏ͳαʔϏεͰ͢ɻ
ςʔϚ αʔόϨεΞʔΩςΫνϟͰઃܭͨ͠8&#αʔόͰ Ͳ͜·ͰϨΠςϯγΛݮΒ͢͜ͱ͕ग़དྷΔ͔ɻ Λٻ͢Δ͜ͱͰɺͲ͕͜ϘτϧωοΫʹͳΔͷ͔ΛৄΒ͔ ʹ͠·͢ɻ
ཁ݅ • αʔόϨεΞʔΩςΫνϟ • "84Λ͏ • %#ͷΛॻ͖͑ͨΓಡΈࠐΜͩΓ͢Δ • ಠࣗυϝΠϯ •
)5514ʢͳΔ҆͘͘ͳΒΜ͚ʁʣ
ΞʔΩςΫνϟ Amazon CloudFront ACM Amazon API Gateway AWS Lambda Amazon
VPC Amazon RDS Amazon Route 53
ϓϩάϥϜ
ॳճΞΫηε࣌ ճࢼߦɻ্ԼΛΓࣺͯ ճΛ࠾༻ ɻ ฏۉ TFD தԝTFD ճҎ߱ ฏۉ TFD
தԝTFD
ඵͪΐͬͱʜ ճͷΞΫηεطʹىಈ͞ΕͨίϯςφΛ͍·Θ͢ͷ Ͱɺൺֱతૣ͘Ԡͯ͘͠Ε·ͨ͠ɻ ճͷ NT߹ʹΑͬͯ·ͩڐ༰Ͱ͖Δ͔͠Ε ͳ͍͚ΕͲɺॳճͷ TFDྲྀੴʹͪΐͬͱʜɻ
71$Λ૭͔Βࣺ͛ͯΔ 71$ͷ3%4ʹΞΫηε͍ͯ͠Δ͕ɺ71$ͷׂ&/*ͷ࡞ ͱׂ͕ඞཁͱͳΔͷͰɺ͍ɻ
ΞʔΩςΫνϟ Amazon CloudFront ACM Amazon API Gateway AWS Lambda Amazon
RDS Amazon Route 53
ॳճΞΫηε࣌ ฏۉ TFD தԝTFD ʊਓਓਓਓਓਓਓਓਓਓਓਓʊ ʼ ͋Μ·มΘΒΜ͔ͬͨ ʻ ʉ:?:?:?:?:?:?:?:?:?:ʉ ͜ͷ͋ͱग़ͯ͘Δ+BWBͷ7.ىಈͱ
&/*ͷׂ͕ฒྻͰಈ͍ͯΔ͔Β͔
ηΩϡϦςΟతʹʜ -BNCEBͷ*1ΞυϨεݻఆͰ͖ͳ͍ɻ .Z42-ͷύεϫʔυೝূ͚ͩͰͪΐͬͱෆ͔҆ɻ
ΞʔΩςΫνϟ Amazon CloudFront ACM Amazon API Gateway AWS Lambda Amazon
DynamoDB Amazon Route 53
ϓϩάϥϜ
ॳճΞΫηε࣌ ฏۉ TFD தԝ TFD %ZOBNP%# ʹͨ͜͠ͱͰɺ͘ͳͬͯ͠·ͬͨɻ ͜Ε "844%,ͷॳظԽॲཧ͕ॏ͕͔͔ͯ࣌ؒ͘Δ͜ͱ ʹىҼ͍ͯ͠Δɻ
ͳΜʹͯ͠ɺࠓͷΓํͰݫ͕͋͠͞Δɻ
+BWBΛ૭͔Βࣺ͛ͯΔ +BWB7.ͷىಈʹ͕͔͔࣌ؒΔɻͦͷͨΊɺॳճΞΫηε ࣌ʹ͕͔͔࣌ؒͬͯ͠·͏ɻ
ΞʔΩςΫνϟ Amazon CloudFront ACM Amazon API Gateway AWS Lambda Amazon
DynamoDB Amazon Route 53
ϓϩάϥϜ
ॳճΞΫηε࣌ ฏۉ TFD தԝ TFD ճҎ߱ ฏۉ TFD தԝ TFD
ॳճͰඵʹ 1ZUIPOʹͨ͜͠ͱͰىಈͷΦʔόʔϔου͕ܹݮͯ͠ɺॳ ճΞΫηε࣌ͰඵʹͳΓ·ͨ͠ɻ
$MPVE'SPOU "$. Λ૭͔Βࣺ͛ͯΔ 4MBDLͷࣄྫ IUUQXXXTMJEFTIBSFOFU"NB[PO8FC4FSWJDFTTFDVSFEBQJBDDFMFSBUJPO XJUIFOHJOFFSTGSPNBNB[PODMPVEGSPOUBOETMBDL 1 ͷΑ͏ʹɺ୯ҰϦʔδϣ ϯͰϫʔϧυϫΠυʹαʔϏεΛల։͍ͯ͠Δ߹ɺւΛ ͑ΔΑ͏ͳέʔεͰɺ$MPVE'SPOUˠΦϦδϯ
&$ Ͱ"84 ͷଠ͍όοΫϘʔϯʹΑΔߴ௨৴ʹΑΓϨΠςϯγ͕վળ ͢Δ͜ͱ͕͋Γ·͢ɻ ࠓճͷϢʔεέʔεͰΩϟογϡώοτظ͠·ͤΜ͠ɺ ϗοϓ͕૿͑Δ͜ͱʹΑΔϨΠςϯγ૿ͷѱӨڹ͕େ͖͍ ͷͰɺ$MPVE'SPOU Λύʔδ͠·͢ɻ
ΧελϜυϝΠϯΛઃఆ ͨͩ $MPVE'SPOU Λ֎͚ͩͩ͢ͱɺυϝΠϯ͕ "1*(BUFXBZؙग़͠Ͱ͔ͬ͜ѱ͍ͷͰɺ-FUT`T &ODSZQUͰ औͬͨαʔόূ໌ॻΛͬͯΧελϜυϝΠϯΛઃఆ͠·͢ɻ
ΞʔΩςΫνϟ Amazon API Gateway AWS Lambda Amazon DynamoDB Amazon Route
53
ॳճΞΫηε࣌ ฏۉ TFD தԝ TFD ճҎ߱ ฏۉ TFD தԝ TFD
ʙNTॖ $MPVE'SPOU Λ֎ͨ͜͠ͱͰɺʙNT͘ͳΓ·͠ ͨɻ "1*(BUFXBZ࣮ଶ $MPVE'SPOUɻ ˠ$%/͕ஈߏʹɻ ˠΤοδϩʔέʔγϣϯఆ͕೦ʹͳͬͯΔ͔ɻ
"844%,ͷॳظԽΛ GVODUJPOͷ֎ʹ "84 4%,ͷॳظԽΘΓͱ͕͔͔࣌ؒΔͷͰɺΞΫηε͢ Δʹ࣮ߦ͢ΔͷͰͳ͘ɺىಈ࣌ʹճ͚ͩ͢ΔΑ͏ʹ͢ Δɻ ͜ΕͰɺճҎ߱ͷԠ্͕͢Δɻ
ϓϩάϥϜ
ॳճΞΫηε࣌ ฏۉ TFD தԝ TFD ճҎ߱ ฏۉ TFD தԝ TFD
ʙNTॖ "84 4%,ͷॳظԽΛϑΝϯΫγϣϯͷ࣮ߦຖʹߦΘͣɺॳ ճʹͷΈߦ͏Α͏ʹͨ͜͠ͱͰɺίϯςφͷ͍ճ͚ͩ͠Ͱ ͳ͘ɺΫϥΠΞϯτΠϯελϯεͷ͍ճ͠ͷޮՌͰճ Ҏ߱ͷॲཧ͕࣌ؒૣ͘ͳΓ·ͨ͠ɻ ॳճ·Ͱ͘ͳͬͯΔͷϛεςϦʔͰ͢ɻ GVODUJPOݺͼग़͠·ͰϝϞϦׂΓͯྔʹΑΒͣϑϧύϫ ʔͰىಈͯ͘͠ΕͯΔʁ ʢࠓճ+BWB.#1ZUIPO.#ͱ͍͏࠷খαΠζͰܭଌ͍ͯ͠·͢ʣ
༨ஊ AWS Lambda Amazon DynamoDB AWS SDK
༨ஊ ϓϩάϥϜ
ॳճΞΫηε࣌ ฏۉ TFD தԝ TFD ճҎ߱ ฏۉ TFD தԝ TFD
NTΛΔ݁Ռʹʢ͕ͩɺ8&#αʔόͰͳ͍ "1*(BUFXBZ࣮ଶ $MPVE'SPOU ͳͷͰ ʢIUUQXXXTMJEFTIBSFOFULFJTVLFBXTMBNCEBBNB[POBQJHBUFXBZEFFQEJWF 1ʣ ɺ "1*(BUFXBZ $MPVE'SPOU ͱಉ༷ͷΛ๊͍͑ͯΔɻ
݁Ռɺ"1*(BUFXBZΛඈ͢͜ͱͰɺ͞Βʹʙ NTͷॖ͕Ͱ͖ͨɻ
·ͱΊ 100ms ~ 200ms 3000ms ~ 4000ms 3000ms ~ 4000ms
100ms 〜 300ms(割当メモリに左右) 100ms ~ 200ms Amazon CloudFront Amazon API Gateway Elastic Network Interface "844%, ॳظԽ
·ͱΊ +BWB ىಈ͕͍ɻ ˠىಈͨ͋͠ͱരͩΑʂ͑ͳ͍ࢠͩͱצҧ͍͠ͳ͍Ͱʂ $MPVE'SPOU ΛڬΉͱ͘ͳͬͨɻ ˠ"84͞Μɻ"1*(BUFXBZͰ"$.͑ΔΑ͏ʹ͍ͯͩ͘͠͞ɻ $MPVE'SPOU Λൈ͍ͯߴԽͯ͠ "1*(BUFXBZ͕ʜɻ
ˠ"84͞ΜɻͳΜͱ͔ߴԽ͍ͯͩ͘͠͞ɻ "844%,ͷ"1*ΫϥΠΞϯτΠϯελϯεੜҙ֎ͱ͍ɻ
એ (4 Ͱ͜ͷΑ͏ͳɺαʔόϨεΞʔΩςΫνϟಛ༗ͷಛੑ ΛѲ্ͨ͠ͰύϑΥʔϚϯενϡʔχϯάΛ֤ॴͰߦͬͯ ͍·͢ɻ (4 Λར༻͢Δ͜ͱͰɺࣗ͝Ͱ͜ͷΑ͏ͳνϡʔχϯάΛ ߦΘͳͯ͘࠷దԽ͞ΕͨαʔϏεΛ͝ར༻͍͚ͨͩ·͢ɻ ੋඇɺ(4ͷ࠾༻͝ݕ౼͍ͩ͘͞ɻ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ IUUQTHTJP ϕʔλςετࢀՃऀืूதʂ