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
170
事例から見るサーバーレスの効果 / 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
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
300
地方のPHPerもクラウドを使う理由 ~コストの最適化とチームに向き合う~ / Why even local PHPers use the cloud ~optimize costs and face the team
seike460
PRO
0
62
OpenTelemetryで始めるベンダーフリーなobservability / Vendor-free observability starting with OpenTelemetry
seike460
PRO
0
160
AIコーディングの本質は“コード“ではなく“構造“だった / The essence of AI coding is not “code” but "structure
seike460
PRO
2
960
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
1
630
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
290
Amazon Aurora DSQLパフォーマンスチェック / Amazon Aurora DSQL Performance Check
seike460
PRO
0
8
(再)ひとり技術広報からの脱却 / Re:Breaking away from one-man technical public relations
seike460
PRO
1
220
Amazon Q Developer Proで 効率化するAPI開発 / Streamline API Development with Amazon Q Developer Pro
seike460
PRO
0
7
Other Decks in Programming
See All in Programming
ASP.NETアプリケーションのモダナイズ インフラ編
tomokusaba
1
370
Java on Azure で LangGraph!
kohei3110
0
150
Webからモバイルへ Vue.js × Capacitor 活用事例
naokihaba
0
700
実践ArchUnit ~実例による検証パターンの紹介~
ogiwarat
2
270
UPDATEがシステムを複雑にする? イミュータブルデータモデルのすすめ
shimomura
1
550
FormFlow - Build Stunning Multistep Forms
yceruto
1
180
生成AIで日々のエラー調査を進めたい
yuyaabo
0
600
データベースコネクションプール(DBCP)の変遷と理解
fujikawa8
1
260
Kotlin エンジニアへ送る:Swift 案件に参加させられる日に備えて~似てるけど色々違う Swift の仕様 / from Kotlin to Swift
lovee
1
220
2度もゼロから書き直して、やっとブラウザでぬるぬる動くAIに辿り着いた話
tomoino
0
160
実はすごいスピードで進化しているCSS
hayato_yokoyama
0
120
Prism.parseで 300本以上あるエンドポイントに 接続できる権限の一覧表を作ってみた
hatsu38
1
110
Featured
See All Featured
Navigating Team Friction
lara
187
15k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Designing for humans not robots
tammielis
253
25k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Why Our Code Smells
bkeepers
PRO
337
57k
Facilitating Awesome Meetings
lara
54
6.4k
Building Adaptive Systems
keathley
43
2.6k
Typedesign – Prime Four
hannesfritz
42
2.7k
GitHub's CSS Performance
jonrohan
1031
460k
Balancing Empowerment & Direction
lara
1
320
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/
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠