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
serverless
Search
akshimo
February 15, 2020
Technology
1
200
serverless
akshimo
February 15, 2020
Tweet
Share
More Decks by akshimo
See All by akshimo
私の推し技術(DERTA Gig #18)
shimomura
1
67
UPDATEがシステムを複雑にする? イミュータブルデータモデルのすすめ
shimomura
2
840
5分でわかる イミュータブル データモデル
shimomura
1
170
アラートの話 をしよう!
shimomura
0
77
機械翻訳との付き合い方
shimomura
0
250
Other Decks in Technology
See All in Technology
SQLAlchemy の select(User).where(User.id =="123") を理解してみる/sqlalchemy deep dive
3l4l5
2
210
HonoとJSXを使って管理画面をサクッと型安全に作ろう
diggymo
0
160
「魔法少女まどか☆マギカ Magia Exedra」のIPのキャラクターを描くための3Dルック開発
gree_tech
PRO
0
150
だいたい分かった気になる 『SREの知識地図』 / introduction-to-sre-knowledge-map-book
katsuhisa91
PRO
3
1.2k
ソフトウェアエンジニアの生成AI活用と、これから
lycorptech_jp
PRO
0
820
serverless team topology
_kensh
2
130
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
12
81k
私のMCPの使い方
tsubakimoto_s
0
120
Implementing and Evaluating a High-Level Language with WasmGC and the Wasm Component Model: Scala’s Case
tanishiking
0
170
事業開発におけるDify活用事例
kentarofujii
4
1.3k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.2k
Node.js 2025: What's new and what's next
ruyadorno
0
1k
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
Site-Speed That Sticks
csswizardry
13
920
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Docker and Python
trallard
46
3.6k
Done Done
chrislema
185
16k
Building an army of robots
kneath
305
46k
Become a Pro
speakerdeck
PRO
29
5.6k
Visualization
eitanlees
149
16k
Designing for humans not robots
tammielis
254
26k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
GitHub's CSS Performance
jonrohan
1032
470k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Transcript
αʔόϨεͬͯΈͯ ྑ͔ͬͨͱ͜ͱ͔ѱ͔ͬͨͱ͜ͱ ͔ ૼଜ ݠୋ
ࣗݾհ • twitter : @akshimo • php, ruby, java, vue.js,
aws, alibaba cloud… • ͨ·ʹ৽ਓݚमߨࢣͱ͔ͬͨΓ • ͖ͳ͓ञɿΞϒαϯ
ࠓͷ • αʔόϨεͬͯΈͯྑ͍ͱࢥͬͨͱ͜ɺѱ ͍ͱࢥͬͨͱ͜Λ͔ͨͬͨ͠ • Ұ൪͍͑ͨྑ͍Օॴ͕͋ΔͷͰɺ͋ͱ͓ ·͚తͳҐஔ͚
લఏ • ύϒϦοΫΫϥυͷදతͳαʔϏεͷ ࣝ • ίϯςφRDBMSͳͲͷجຊతͳٕज़ཧղ • AWSΛྫͱ͓ͯ͠͠·͢
ࢲతαʔόϨεྺ ؆୯ͳTMBDLͷCPUΛαʔόϨεͰ࡞ͬͯΈΔ ৽ن։ൃ͕ඞཁͳόονॲཧΛαʔόϨεͰ࡞Δ ࣾཧXFCγεςϜΛαʔόϨεͰ࡞ΔOPX
“serverless”ͷgoogleτϨϯυ
αʔόϨεͱ • αʔόͷϓϩϏδϣχϯάཧ͕ෆཁ • BaasFaasɺͦͷଞαʔϏεΛΈ߹Θͤͯ ࣮ݱ͢Δ ɹBaas : Firebase, Auth0,
etc… ɹFaas : Lambda, AzureFunctions, etc…
·͓͖͍ͣ͑ͯͨ αʔόϨεʢಛʹFaasʣͰɺ εςʔτϨεɺႈੑ͕ཁٻ͞ΕΔɻ ఏڙ͞ΕΔͷ͋͘·Ͱ1ͭͷʮؔʯ ɹɹɹɹɹɹɹɹˣ ɹɹ୯Ұॲཧݪଇʢ୯Ұݪଇʁʣ
डαʔϏε ܾࡁαʔϏε ࡏݿҾαʔϏε จ DBMM ग़ՙαʔϏε DBMM DBMM
• αʔϏεݺͼग़͠ଆ͕ݺͼग़͢αʔϏεͷ͜ ͱΛ͍ͬͯͳ͚Ε͍͚ͳ͍ɿີ݁߹ • ͜ΕΛαʔόϨεͰ࣮ݱ͢Δͷݱ࣮తͰ ͳ͍
ͦ͜Ͱɺ EVENT DRIVEN
डαʔϏε ܾࡁαʔϏε ࡏݿҾαʔ Ϗε จ ग़ՙαʔϏε QVCMJTI &7&/5 TVCTDSJCF TVCTDSJCF
TVCTDSJCF
• ֤αʔϏεଞαʔϏεΛҙࣝ͠ͳ͍ɻ Pub/Sub͖͢ΠϕϯτͷΈΛҙࣝ͢Δɻ • ૄ݁߹Ͱ͋Γͳ͕Βɺूɺཧ͕Ͱ͖Δɻ • ࣗવͱඇಉظͱͳΓϦτϥΠՄೳͱͳΔɻ • େنͳγεςϜͰ্هಉ͡ʂ
EVENT DRIVENʹΘΕΔαʔϏεྫʢҰ෦ʣ
͜Ε͔ͬͯͳΓચ࿅͞Εͨ ϚΠΫϩαʔϏγʔζ ͷ͔ͨͪͳΜ͡Όͳ͍ʁ
ͭ·ΓɺαʔόϨεʹ͢Ε উखʹ៉ྷͳϚΠΫϩαʔϏγʔζ͕ ग़དྷ্͕ΔΜͩʂʂʁ ʢࠓҰ൪ݴ͍͔ͨͬͨࣄʣ
ͦͷଞαʔόϨεͷ ಛɾϝϦοτ/σϝϦοτΛ μΠδΣετͰ
͍҆ʂ • ݴΘ͕ͣͳͷϝϦοτ • ΠϯϑϥΤϯδχΞͷਓతίετతͳ໘Ͱ Goodʢอकੑʣ
εέʔϥϏϦςΟ • ϝϦοτ • جຊউखʹεέʔϧΞτ͢Δͱ͍͏εʔύʔ ༷ • ҰԠϦʔδϣϯຖʹಉ࣮࣌ߦઃ͚ΒΕͯ ͍Δ
RDBMSͱͷ૬ੑ • σϝϦοτɺجຊΞϯνύλʔϯ • εςʔτϨεͷͨΊɺίωΫγϣϯϓʔϧ͕͑ͳ͍ • உͬͯʮDynamoDBʯ • ʮRDS ProxyʯͷొʹΑΓղܾʂʁ
https://dev.classmethod.jp/cloud/aws/lambda- support-rds-proxy-beta/
ίʔϧυελʔτ • σϝϦοτ • lambda࣮ߦ࣌ʹίϯςφͷ࡞ͳͲ࣮ߦڥ ͷॳظԽΛ͏߹͕͋Δ • Provisioned ConcurrencyʹΑΓղܾʂʁ https://dev.classmethod.jp/cloud/aws/
lambda-support-provisioned-concurrency/
ίʔυͷԽ • σϝϦοτʁ • lambda layerʹΑΓଟগղܾՄೳʁ https://dev.classmethod.jp/cloud/aws/ lambda-layer-basics-how-it-works/
ίʔυཧͰ͖ͳ͍ΜͰ͠ΐʁ • Ͱ͖ΔΑʂ • SAM CLI (https://github.com/awslabs/aws- sam-cli) • lambroll
(https://github.com/fujiwara/ lambroll) • apexNo longer maintained…
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠