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 Effectiveness as S...
Search
shiro seike
PRO
May 25, 2024
Programming
1
150
事例から見るサーバーレスの効果 / Serverless Effectiveness as Seen in Case Studies
Serverless Meetup Osaka #01:begin
https://serverless.connpass.com/event/313724/
shiro seike
PRO
May 25, 2024
Tweet
Share
More Decks by shiro seike
See All by shiro seike
(再)ひとり技術広報からの脱却 / Re:Breaking away from one-man technical public relations
seike460
PRO
1
88
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
770
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
240
AWS reInvent 2024サービスアップデートデモ / AWS reInvent 2024 Service Update Demo
seike460
PRO
0
36
AWS Lambdaから始まった Serverlessの「熱」とキャリアパス / It started with AWS Lambda Serverless “fever” and career path
seike460
PRO
1
590
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
1.2k
実践サーバーレスパフォーマンスチューニング ~その実力に迫る~ / Practical Serverless Performance Tuning ~A Close Look at its Power~
seike460
PRO
2
370
PHPを書く理由、PHPを書いていて良い理由 / Reasons to write PHP and why it is good to write PHP
seike460
PRO
5
630
AWS CDKを用いたセキュアなCI/CDパイプラインの構築 / Build a secure CI/CD pipeline using AWS CDK
seike460
PRO
3
780
Other Decks in Programming
See All in Programming
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
1
420
HTML/CSS超絶浅い説明
yuki0329
0
190
functionalなアプローチで動的要素を排除する
ryopeko
1
200
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
130
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
870
AppRouterを用いた大規模サービス開発におけるディレクトリ構成の変遷と問題点
eiganken
1
440
ErdMap: Thinking about a map for Rails applications
makicamel
1
610
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
300
Stackless и stackful? Корутины и асинхронность в Go
lamodatech
0
1.3k
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
360
良いユニットテストを書こう
mototakatsu
11
3.6k
「とりあえず動く」コードはよい、「読みやすい」コードはもっとよい / Code that 'just works' is good, but code that is 'readable' is even better.
mkmk884
6
1.4k
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
570
RailsConf 2023
tenderlove
29
970
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Designing for Performance
lara
604
68k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
How GitHub (no longer) Works
holman
312
140k
The Power of CSS Pseudo Elements
geoffreycrofte
74
5.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Optimising Largest Contentful Paint
csswizardry
33
3k
Transcript
©Fusic Co., Ltd. 1 ࣄྫ͔ΒΈΔαʔ バ ʔϨεͷޮՌ 2024.05.25 @seike460 Serverless
Meetup Osaka #01:begin
©Fusic Co., Ltd. 2 ਗ਼Ո ࢙ @seike460 AWS Community Builder
Serverless Serverless Meetup Fukuoka ίϛϡχςΟ Fukuoka.php Fukuoka.go JAWS-UG Fukuoka Cloudflare Meetup Fukuoka JP_Stripes Fukuoka ࣗݾհ ͡Ίʹ גࣜձࣾFusic ϓϦϯγύϧΤϯδχΞ/ΤόϯδΣϦετ
©Fusic Co., Ltd. 3 CONTENTS ࣍ 1. αʔόʔϨεΒ͠͞ΛৼΓฦΔ 2. ࣄྫ1ɿΞΫηεͷஅ
3. ࣄྫ2ɿׂΛ͚ͨαΠτ 4. ࣄྫ3ɿSaaSͱͷ࿈ܞ 5. ࣄྫ͔ΒৼΓฦΔαʔόʔϨε 6. ·ͱΊ
©Fusic Co., Ltd. 4 αʔόʔϨεΒ͠͞ΛৼΓฦΔ 1
©Fusic Co., Ltd. 5 αʔόʔϨεͱͳΜͳͷ͔ 言 Cloud Native Computing Foundation
CNCF Serverless Whitepaper v 1 . 0 行 https://github.com/cncf/wg-serverless/tree/master/whitepapers/serverless-overview
©Fusic Co., Ltd. 6 αʔόʔϨεͷ֓೦ΛऔΓೖΕΔϝϦοτଟ 入 入 入 大 小
用 行
©Fusic Co., Ltd. 7 αʔόϨεΒ͠͞ αʔόʔϨεͱ֓೦Ͱ͋Γʮ͜ͷαʔϏεશʹαʔόʔϨεͰ͋Δʯͱ அݴͰ͖ΔαʔϏε࣮͍͠ͷͰͳ͍͔ͱߟ͍͑ͯ·͢ αʔόʔϨεͰ͋ΔɺαʔόʔϨεͰͳ͍ͱ͍͏ٞࣗମɺ ࣮ߦ͏ඞཁ͕ͳ͍ͷ͔͠Εͳ͍ େࣄͳͷαʔόʔϨεͱ͍͏֓೦ͷཧղΛਂΊ
ʮαʔόʔϨεΒ͠͞ͷਖ਼ମΛ௫Ή͜ͱʯ
©Fusic Co., Ltd. 8 αʔόʔϨεΒ͠͞ͷਖ਼ମʁ αʔόʔϨεΩϟογϡͰ༗໊ͳmomentoʹΑΔදݱ 1. ϓϩϏδϣϯෆཁɺཧෆཁ 2. ࠷ྉۚͷͳ͍͚ͬͨͩͷࢧ͍
3. 1 ͭͷ API ݺͼग़͠Ͱར༻Մೳ 4. ܭըఀࢭ͕ͳ͍ 5. Πϯελϯε͕ແ͍ αʔόʔϨεͷಛଊ͓͑ͯΓڌΓॴʹͯ͠ྑ͍ͱࢥ͏͕ ݸਓతͳҙࣝͱͯ͠ʮ͑ͩͱߟ͑Δඞཁͳ͍ʯ αʔόʔϨεΒ͍͠αʔϏεΞοϓσʔτ͞Ε͍ͯ͘͠ɺ ৽͍֓͠೦ͷՃʹΑΓαʔόϨεΒ͠͞มΘ͍ͬͯ͘
©Fusic Co., Ltd. 9 αʔόʔϨεΒ͋͘͠Ζ͏ͱ͢Δ ͕ͯ͢αʔόʔϨεͰͳͯ͘ྑ͍ αʔόʔϨεͷ֓೦ΛऔΓೖΕΔ͜ͱͰ՝ղܾ͕ग़དྷͨɺ ՝Λղܾ͍ͯͨ͠ࣄྫʹ͍͓ͭͯ͠Α͏ͱࢥ͍·͢
©Fusic Co., Ltd. 10 ࣄྫ1ɿΞΫηεͷஅ 2
©Fusic Co., Ltd. 11 ඇৗʹγϯϓϧͳWebγεςϜ 一見 Web 用 一方 日
CPU EC 2 + RDS 行
©Fusic Co., Ltd. 12 ࿈ܞઌ͔ΒใΛड৴ͯ͠දࣔ 示 行 行 日 自
API 口 EC 2
©Fusic Co., Ltd. 13 αʔόʔϨεͳAPIΛՃ AWS API Gateway -> AWS
Lambda -> S 3 言 JSON EC 2 S 3 用 行
©Fusic Co., Ltd. 14 ࿈ܞݩͷϦϓϨʔε 言 用 (200 )
©Fusic Co., Ltd. 15 ࣄྫ2ɿׂΛ͚ͨαΠτ 3
©Fusic Co., Ltd. 16 ղੳج൫ͱͯ͠ͷαʔόʔϨεαΠτ CPU
©Fusic Co., Ltd. 17 αʔόʔϨεαΠτͱͯ͠ͷׂ AWS Amplify 用 GraphQL 用
大 Amazon S 3 AWS Elemental MediaConvert 用 Web 行
©Fusic Co., Ltd. 18 ղੳج൫ͱͯ͠ͷׂ AWS Batch 行 大 工
行 Amazon ECR AWS Batch AWS Step Functions
©Fusic Co., Ltd. 19 αʔόʔϨεͳϫʔΫϑϩʔ AWS Lambda AWS Step Functions
AWS Batch 用 Web 用 示 JSON 用 一 AWS Step Functions
©Fusic Co., Ltd. 20 ඞཁͳ࣌ʹඞཁͳ͚ͩϦιʔεར༻ CPU Web CPU 用 用
大
©Fusic Co., Ltd. 21 ࣄྫ3ɿSaaSͱͷ࿈ܞ 4
©Fusic Co., Ltd. 22 SaaSͱΈ߹ΘͤͨαʔόʔϨεαΠτ 入力 行 金 入 Stripe
行
©Fusic Co., Ltd. 23 αʔόʔϨεαΠτͱͯ͠ͷׂ 入力 行 JSON Amazon S
3
©Fusic Co., Ltd. 24 ղੳج൫ͱͯ͠ͷׂ 行 行 JSON 行 入力
©Fusic Co., Ltd. 25 ՝ۚج൫ͱͯ͠ͷׂ URL Stripe Checkout 用 金
金 Web Hook 築 行 金 築 URL
©Fusic Co., Ltd. 26 SaaSΛ͢͜ͱͰػೳՃΛߦ͏ 金 行 Stripe 課 ⾒
SaaS 行 築 自 入
©Fusic Co., Ltd. 27 ࣄྫ͔ΒৼΓฦΔαʔόʔϨε 5
©Fusic Co., Ltd. 28 αʔόϨεΒ͠͞ΛࣗʹऔΓೖΕΔ ʮαʔόʔϨεͰ͋Δ͔Β͍͢͝ʯͰͳͯͨ͘ΓલʹαʔόʔϨεΛѻ͖ͬͯͨ݁Ռ αʔόʔϨεͱ͍͏֓೦Λࣗࣗͷதʹਁಁ͍͖ͯ͠ɺ ͦͷ݁Ռ͍ͭ͘ͷతɺ՝ղܾΛୡग़དྷͨͱࢥ͍ͬͯ·͢ େࣄͳͷαʔόʔϨεͱ͍͏֓೦ͷཧղΛਂΊ ʮαʔόʔϨεΒ͠͞ͷਖ਼ମΛ௫ΈɺͦΕΛతʹ߹Θͤͯࣗવʹར༻͢Δࣄʯ
©Fusic Co., Ltd. 29 Serverless Land ͠ࠓͷ༰ͰͨΓલʹαʔόʔϨεΛѻ͍ͬͯ͘ࣄʹڵຯ͕ग़͖ͯͨͷͳΒ ·ͣͲΜͳύλʔϯ͕͋Δͷ͔ʮServerless LandʯΛݟͯΈΔ͜ͱΦεεϝͰ͢ https://serverlessland.com/
AWSͷαʔόʔϨεʹݶͬͨʹͳͬͯ͠·͍·͕͢ɺ༷ʑͳύλʔϯΛ֬ೝͰ͖·͢
©Fusic Co., Ltd. 30 νʔϜʹద༻͢Δॏཁੑ ͦͷޙαʔόʔϨεΒ͠͞Λҙࣝͯ͠ ༷ʑͳҊ݅ʹऔΓΜͰ͍·͢ ࠓճল͖·͕͢ɺBrefͱ͍͏OSSΛར༻ͯ͠ PHP ͷ
Laravel ͱ͍͏Web FrameworkΛऔΓೖΕ PHPνʔϜʹαʔόʔϨεΛద༻͢Δ׆ಈ͍ͯ͠·͢ αʔόʔϨεͷ੍ͱ͖߹͍ͳ͕Βɺ ͋ΔҙຯҰ෦ϞϊϦεԽͨ͠LambdaΛऔΓೖΕΔ ΞʔΩςΫνϟ࣮ફ ͍͖ͳΓαʔόʔϨεͰϚΠΫϩαʔϏεͰͳͯ͘ྑ͍
©Fusic Co., Ltd. 31 Monolith First Serverless Development ࢀߟURL :
https://speakerdeck.com/_kensh/monolith-first-serverless-development?slide=55 @_kensh ʮMonolith First Serverless Developmentʯ
©Fusic Co., Ltd. 32 αʔυύʔςΟΛར༻͢Δ͜ͱͰSQLࣗવʹར༻Մೳ - Supabase - SupabaseΦʔϓϯιʔεͷFirebaseସͱͯ͠ઃܭ͞Εͨ BaaSϓϥοτϑΥʔϜ
PostgreSQLΛج൫ͱͨ͠ߴੑೳͳϦϨʔγϣφϧσʔλϕʔεΛఏڙ - TiDB Serverless - TiDB ServerlessPingCAPʹΑͬͯ։ൃ͞Εͨ ΦʔϓϯιʔεͷࢄܕSQLσʔλϕʔεͰ͋ΔTiDBͷServerlessόʔδϣϯ MySQLͱޓੑͷ͋ΔϦϨʔγϣφϧσʔλϕʔεΛఏڙ
©Fusic Co., Ltd. 33 ΫϥυωΠςΟϒͳࠓɺαʔόʔϨεͨΓલʹͦ͜ʹ • ׂͷ୲ΛΧδϡΞϧʹߦ͏͜ͱ͕ग़དྷΔ • ׂΛ୲ͤ͞Δࣄ͕ग़དྷΔͷͰʮతʹண͕ग़དྷΔʯ •
తʹ߹ΘͤͨదͳߏΛఏڙՄೳͳ࣌ʹ αʔόʔϨεͰ͋Δ͜ͱ͕ॏཁͰͳͯ͘ తʹॊೈʹɺదʹϦιʔεΛஔग़དྷΔ͜ͱ͕αʔόʔϨεͷྑ͞
©Fusic Co., Ltd. 34 ·ͱΊ 5
©Fusic Co., Ltd. 35 ·ͱΊ αʔόʔϨεαʔόཧΛඞཁͱ͠ͳ͍ΞϓϦέʔγϣϯͷߏஙͱ࣮ߦͷʮ֓೦ʯ Point 01 ׂΛஅͤ͞Δࣄ͕ग़དྷΔͨΊɺඞཁͳڧΛεέʔϥϒϧʹఏڙ͢Δ͜ͱग़དྷΔ Point
02 ׂΛஅͤ͞Δࣄ͕ग़དྷΔͨΊɺʮతʹ·͙ͬ͢ʯΞʔΩςΫνϟΛΉ͜ͱ͕ग़དྷΔ Point 03 αʔόʔϨεʹ͢Δࣄ͕తͰͳ͍ɺతʹண͢ΔͨΊʹʮαʔόʔϨεΒ͠͞ʯͷಋೖΛ Point 04
©Fusic Co., Ltd. 36 Thank You We are Hiring! https://recruit.fusic.co.jp/
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠