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
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
3
790
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
380
地方のPHPerもクラウドを使う理由 ~コストの最適化とチームに向き合う~ / Why even local PHPers use the cloud ~optimize costs and face the team
seike460
PRO
0
64
OpenTelemetryで始めるベンダーフリーなobservability / Vendor-free observability starting with OpenTelemetry
seike460
PRO
0
170
AIコーディングの本質は“コード“ではなく“構造“だった / The essence of AI coding is not “code” but "structure
seike460
PRO
2
1.1k
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
1
650
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
330
実行委員長が振り返るBacklogWorldの裏側と運営Backlog術 / The chairperson of the executive committee looks back on the backstage of BacklogWorld and the art of managing Backlog.
seike460
PRO
0
4
Amazon Aurora DSQLパフォーマンスチェック / Amazon Aurora DSQL Performance Check
seike460
PRO
0
14
Other Decks in Programming
See All in Programming
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
1k
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
2
650
Claude Code + Container Use と Cursor で作る ローカル並列開発環境のススメ / ccc local dev
kaelaela
12
6.9k
Rubyでやりたい駆動開発 / Ruby driven development
chobishiba
1
760
GPUを計算資源として使おう!
primenumber
1
210
ペアプロ × 生成AI 現場での実践と課題について / generative-ai-in-pair-programming
codmoninc
2
21k
TypeScriptでDXを上げろ! Hono編
yusukebe
3
710
The Niche of CDK Grant オブジェクトって何者?/the-niche-of-cdk-what-isgrant-object
hassaku63
1
570
状態遷移図を書こう / Sequence Chart vs State Diagram
orgachem
PRO
2
190
ふつうの技術スタックでアート作品を作ってみる
akira888
1
1.2k
MCPを使ってイベントソーシングのAIコーディングを効率化する / Streamlining Event Sourcing AI Coding with MCP
tomohisa
0
160
코딩 에이전트 체크리스트: Claude Code ver.
nacyot
0
900
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Raft: Consensus for Rubyists
vanstee
140
7k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Facilitating Awesome Meetings
lara
54
6.5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
The Pragmatic Product Professional
lauravandoore
35
6.7k
What's in a price? How to price your products and services
michaelherold
246
12k
GraphQLとの向き合い方2022年版
quramy
49
14k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.4k
Producing Creativity
orderedlist
PRO
346
40k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
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/
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠