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
120
事例から見るサーバーレスの効果 / 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
PHPを書く理由、PHPを書いていて良い理由 / Reasons to write PHP and why it is good to write PHP
seike460
PRO
5
270
AWS CDKを用いたセキュアなCI/CDパイプラインの構築 / Build a secure CI/CD pipeline using AWS CDK
seike460
PRO
3
490
いまあるチームにフィットさせる Serverless そして Platform Engineeringへの挑戦 / Serverless Fits the Team You Have and Platform Engineering
seike460
PRO
2
1.2k
いまあるチームにフィットさせる Serverless / Serverless fits in with the team you have now.
seike460
PRO
2
59
地方こそサーバーレス! チームにフィットさせるサーバーレス / Rural areas are serverless! Serverless to Fit Your Team
seike460
PRO
0
12
AWS X-Rayを利用したサーバーレスのパフォーマンス分析 / Serverless performance analysis using AWS X-Ray
seike460
PRO
2
37
Cloudflare Workers x AWS Lambdaの組み合わせユースケース / Cloudflare Workers x AWS Lambda Combination Use Case
seike460
PRO
2
420
技術力を高め合う “開けた”企業間コミュニティの形成 / Formation of an "open" inter-company community to enhance technological capabilities
seike460
PRO
1
81
有効な使い方を正しく理解して実装する PHP8.3の最新機能の「ウラ側」 / Understanding and Implementing Effective Usage Correctly The "Uraside" of PHP 8.3's Latest Features
seike460
PRO
1
130
Other Decks in Programming
See All in Programming
AWS Lambda Web Adapterを活用する新しいサーバーレスの実装パターン
tmokmss
6
5.3k
Patched fetch did not work
quramy
6
480
ECS向けのドリフト検知機構を実装してみた
tkikuc
0
260
Flutterアプリを生成AIで生成する勘所
rizumita
0
240
GraphQLとGigaViewer for Apps
numeroanddev
4
880
為醫療加裝Python的引擎
cclai999
0
270
なぜアジャイルがうまくいかないのか?
yum3
2
140
NEWTにおけるiOS18対応の進め方
ryu1sazae
0
180
Perl 5 OOP機構30年史 - Perl 5's OOP Mechanism over the past 30 years
moznion
1
770
dbt-ga4パッケージを実業務に導入してみた話
t_tokumaru_feedcorp
0
100
5年分のツケを一気に払った話
soogie
3
960
CSC305 Lecture 01
javiergs
PRO
1
140
Featured
See All Featured
The Invisible Side of Design
smashingmag
296
50k
Agile that works and the tools we love
rasmusluckow
327
21k
How to name files
jennybc
76
98k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.4k
The Language of Interfaces
destraynor
154
24k
Become a Pro
speakerdeck
PRO
23
4.9k
Designing the Hi-DPI Web
ddemaree
279
34k
Design by the Numbers
sachag
277
19k
Navigating Team Friction
lara
183
14k
What the flash - Photography Introduction
edds
67
11k
Gamification - CAS2011
davidbonilla
79
5k
Fashionably flexible responsive web design (full day workshop)
malarkey
402
65k
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/
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠