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
地方のPHPerもクラウドを使う理由 ~コストの最適化とチームに向き合う~ / Why eve...
Search
shiro seike
PRO
May 31, 2025
Programming
0
74
地方のPHPerもクラウドを使う理由 ~コストの最適化とチームに向き合う~ / Why even local PHPers use the cloud ~optimize costs and face the team
PHPカンファレンス新潟2025
https://phpcon.niigata.jp/
shiro seike
PRO
May 31, 2025
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
880
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
440
OpenTelemetryで始めるベンダーフリーなobservability / Vendor-free observability starting with OpenTelemetry
seike460
PRO
0
210
AIコーディングの本質は“コード“ではなく“構造“だった / The essence of AI coding is not “code” but "structure
seike460
PRO
2
1.2k
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
1
830
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
420
実行委員長が振り返るBacklogWorldの裏側と運営Backlog術 / The chairperson of the executive committee looks back on the backstage of BacklogWorld and the art of managing Backlog.
seike460
PRO
0
15
Amazon Aurora DSQLパフォーマンスチェック / Amazon Aurora DSQL Performance Check
seike460
PRO
0
31
(再)ひとり技術広報からの脱却 / Re:Breaking away from one-man technical public relations
seike460
PRO
1
270
Other Decks in Programming
See All in Programming
Foundation Modelsを実装日本語学習アプリを作ってみた!
hypebeans
1
120
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
620
Six and a half ridiculous things to do with Quarkus
hollycummins
0
210
理論と実務のギャップを超える
eycjur
0
170
Writing Better Go: Lessons from 10 Code Reviews
konradreiche
3
6k
pnpm に provenance のダウングレード を検出する PR を出してみた
ryo_manba
1
150
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
270
技術的負債の正体を知って向き合う
irof
0
230
One Enishi After Another
snoozer05
PRO
0
150
monorepo の Go テストをはやくした〜い!~最小の依存解決への道のり~ / faster-testing-of-monorepos
convto
2
530
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
240
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
8
26k
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
75
5.1k
Why Our Code Smells
bkeepers
PRO
340
57k
Facilitating Awesome Meetings
lara
57
6.6k
Rails Girls Zürich Keynote
gr2m
95
14k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
Code Reviewing Like a Champion
maltzj
526
40k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Building Applications with DynamoDB
mza
96
6.7k
Making Projects Easy
brettharned
120
6.4k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Writing Fast Ruby
sferik
629
62k
Transcript
©Fusic Co., Ltd. CONFIDENTIAL 1 ํͷPHPerΫϥυΛ͏ཧ༝ ~ίετͷ࠷దԽͱνʔϜʹ͖߹͏~ 2025.05.31 ਗ਼Ո࢙ @seike460
PHPΧϯϑΝϨϯε৽ׁ2025
©Fusic Co., Ltd. 2 ࣗݾհ ͡Ίʹ ਗ਼Ո ࢙ (@seike460) S
H I R O S E I K E גࣜձࣾFusicϓϦϯγύϧΤϯδχΞ/ΤόϯδΣϦετ AWS User Group Leaders AWS Community Builder Serverless - ίϛϡχςΟ - JAWS-UG Fukuoka - Fukuoka.php - Fukuoka.go - Serverless Meetup Fukuoka - Cloudflare Meetup Fukuoka - JP_Stripes Fukuoka - JBUG Fukuoka
©Fusic Co., Ltd. 3 CONTENTS ࣍ 1. ํاۀͷڧΈͱΫϥυͷ૬ੑ 2. Ϋϥυͱίετ࠷దԽ
3. Platform EngineeringͰPHPʹద༻͢Δ 4. ํͱίϛϡχςΟ
©Fusic Co., Ltd. 4 ํاۀͷڧΈͱΫϥυͷ૬ੑ 1
©Fusic Co., Ltd. 5 Ϋϥυͷࢥ͍ࠐΈ ͜Μͳࢥ͍ࠐΈ͋Γ·ͤΜ͔ʁ ❌ ʮΫϥυେاۀͷͷʯ ❌ ʮํٕज़ͰΕ͍ͯΔʯ
❌ ʮখنνʔϜʹؔͳ͍ʯ ࣮ࡍ༧ࢉͷখ͞ͳҊ݅ɺখنͳνʔϜʹ ܧଓతʹద༻͠ଓ͚Δ͜ͱͰେ͖ͳՁΛൃش͠·͢ʂ
©Fusic Co., Ltd. 6 ํITاۀͷ3ͭͷڧΈ ҙࢥܾఆ͕ૣ͞ 01 ROI 金 ίετҙࣝͷߴ͞
02 গਫ਼Ӷ 長 自 身 03
©Fusic Co., Ltd. 7 ํITاۀͷ3ͭͷڧΈ ҙࢥܾఆͷૣ͞ 9 Ϋϥυͷॊೈੑ 01 ίετҙࣝͷߴ͞
9 ैྔ՝ۚ 02 গਫ਼Ӷ 9 ϚωʔδυαʔϏε 力 03
©Fusic Co., Ltd. 8 Ϋϥυͱίετ࠷దԽ 2
©Fusic Co., Ltd. 9 • 入 • CPU 用 5%
用 100% ΦϯϓϨϛε • 小 t 3 .micro 用 • 金 • 足 Ϋϥυ Ϋϥυͷมߋ༏Ґੑ
©Fusic Co., Ltd. 10 Auto Scalingͱ͍͏ߟ͑ํ ෛՙʹԠͯ͡αʔόʔΛࣗಈௐ͢ΔΈ AutoScalingGroup MinSize: 1
# ࠷খ1 MaxSize: 10 # ࠷େ10 TargetCPU: 70% # CPU༻70%ҡ࣋ ࣌ؒଳ ΦϯϓϨϛε ΫϥυʢAuto Scalingʣ ਂ 10Քಇ 1ͷΈՔಇ னؒ 10Քಇ ඞཁʹԠͯ͡3-8 ϐʔΫ 10Քಇ ࣗಈͰ10·Ͱ֦ு
©Fusic Co., Ltd. 11 ίϯςφΛར༻͢Δ͜ͱͰڥ४උίετݮ 🚀 ։ൃڥͷ४උ͕࣌ؒܶతॖ ৽ਓͷڥߏஙʹ2-3 → Dockerɿ5Ͱྃ
PHPɺMySQLɺRedisͷෳࡶͳґଘؔΛҰൃղܾ ʮࢲͷڥͰಈ͘ΜͰ͚͢Ͳ...ʯ͕ফ໓ 💰 AWS FargateͰӡ༻ίετݮ ͚ͬͨͩ՝ۚ → ΞΠυϧ࣌ؒͷίετΧοτ Auto ScalingରԠ → ෛՙʹԠͯࣗ͡ಈͰεέʔϧ ಉ͡ίϯςφͰಈ࡞ → ڥ४උίετΧοτ
©Fusic Co., Ltd. 12 αʔόʔϨεԽͰڀۃͷίετ࠷దԽ AWS Lambdaͷྉۚମܥʢ݄ؒ10ສϦΫΤετͷ߹ʣ • $0.20 /
100ສϦΫΤετ • ݄ؒ100ສϦΫΤετແྉ → ࣮࣭΄΅ແྉ 🌙 ΞΫηε͕গͳ͍࣌ؒଳͷίετθϩɿਂɾૣேͷແΞΫηε࣌ؒશʹ0ԁ 📈 ൟظͷΈࣗಈεέʔϧɿࡇΓγʔζϯͰ100ഒΞΫηε૿Ճઃఆෆཁ 💰 ॳظࢿෆཁͰ࢝ΊΒΕΔɿαʔόʔߪೖɾઃஔࣄɾอकܖ → શͯ0ԁ ํҊ݅ʹ࠷దʂ
©Fusic Co., Ltd. 13 DBϨΠϠʔͷίετ࠷దԽ DBͲ͏͓͕͔͔ͯۚ͠Δ → αʔόʔϨεDB͕ղܾ • TiDB
Serverless • ݄ؒແྉ: 5GB + 5,000ສRU • MySQLޓ: طଘίʔυͷҠߦ͕؆୯ • ݄ؒ10ສϦΫΤετ: ΄΅શແྉ • ࣗಈεέʔϦϯά: ༻ྔʹԠͯࣗ͡ಈௐ • Supabase • ແྉ: 500MBσʔλϕʔε + ແ੍ݶAPI • PostgreSQLޓ: ߴػೳͳΫΤϦ͕Մೳ • ϦΞϧλΠϜ: WebSocketͰͷϦΞϧλΠϜ௨৴ • ೝূػೳ: Ϣʔβʔཧػೳଂ
©Fusic Co., Ltd. 14 NEW! Aurora DSQL - ਅͷαʔόʔϨεࢄSQL Amazon
Aurora DSQL (Distributed SQL) 20255݄ Ұൠఏڙ։࢝ʂ • PostgreSQLޓ • શαʔόʔϨε • ࣄ্࣮ແ੍ݶͷεέʔϧ Bref x Amazon Aurora DSQLͰͷ ಈ࡞·Ͱ֬ೝࡁ
©Fusic Co., Ltd. 15 PHPͰAWS Lambda͑ͳ͍ → Laravel + Bref
on AWS Lambda σϑΝΫτελϯμʔυͷPHP WebFrameworkͷLaravel AWSͱͷ૬ੑ͕ඇৗʹྑ͘ɺ .envʹAWSͷύϥϝʔλʔΛઃఆ͢Δ͚ͩͰAWSΛ্खʹѻ͏ࣄ͕Մೳ PHPͷOSSϓϩδΣΫτͰ͋ΔBref AWS Lambda্ͰPHPΞϓϦέʔγϣϯΛ؆୯ʹσϓϩΠͱཧΛՄೳʹ͢Δπʔϧ ͜ΕΒΛΈ߹ΘͤɺPHPٕज़ελοΫʹϑΟοτͤ͞Δ
©Fusic Co., Ltd. 16 PHPΛAWS Lambda্ͰϓϩμΫγϣϯར༻Λ࣮ݱ AWS Dev Day 2022ʹͯϑϧServerlessʹͯఏڙ͍ͯ͠ΔαΠτͷΛ͠·ͨ͠
PHP+Laravelͱ͍͏ٕज़ελοΫʹϑΟοτͤ͞Δ͜ͱͰνʔϜͰಋೖͰ͖ͨࣄྫ https://speakerdeck.com/seike460/serverless-high-load-site-realized-with-amazon-s3-select
©Fusic Co., Ltd. 17 Brefͷٕज़ৄࡉࢲͷաڈࢿྉΛ͝ཡ͍ͩ͘͞ 🔧 Brefͷ෦ಈ࡞Λཧղ͍ͨ͠ํ bootstrap͔ΒϥϯλΠϜϨΠϠʔ·ͰBrefͷΈΛղઆ https://speakerdeck.com/seike460/a-look-inside-serverless-php-take-a-peek-inside-bref 🚀
ຊ൪ڥͰͷ࣮ํ๏ serverless.ymlͷৄࡉઃఆͱLaravel౷߹ͷ࣮ફྫ https://speakerdeck.com/seike460/aws-lambda-in-production-with-bref 💾 DBaaS × αʔόʔϨεPHP SupabaseͱLaravel BreezeΛͬͨೝূ͖ΞϓϦߏங https://speakerdeck.com/seike460/lets-do-it-dbaas-x-serverless-php
©Fusic Co., Ltd. 18 Platform EngineeringͰPHPʹద༻͢Δ 3
©Fusic Co., Ltd. 19 Platform Engineeringͱ 生 ・ 用
©Fusic Co., Ltd. 20 Platform Engineeringͱ -త -։ൃऀମݧͷ্: ෳࡶ͞ΛӅṭ͠ɺຊ࣭తͳ։ൃʹूத -ඪ४Խ:
ϕετϓϥΫςΟεͷࣗಈద༻ -ηϧϑαʔϏεԽ: ։ൃऀ͕ࣗతʹ࡞ۀͰ͖Δڥ -PHPνʔϜͷద༻Ձ -طଘͷLaravelࣝΛͦͷ··׆༻ -Πϯϑϥͷෳࡶ͞Λҙࣝͤͣʹ։ൃ -νʔϜશһ͕ϑϧελοΫ։ൃऀʹ
©Fusic Co., Ltd. 21 Platform Engineering On Serverless URL :https://speakerdeck.com/_kensh/platform-engineering-on-serverless
@_kensh
©Fusic Co., Ltd. 22 νʔϜτϙϩδʔ 用 : ・ , ・
. ʮϓϥοτϑΥʔϜ։ൃνʔϜͷʰअຐʹͳΒͳ͍ʱΑ͏ʹ͢Δɻ ɹ։ൃνʔϜ͕։ൃ͢Δ্Ͱͷલఏ݅ΛͳΔ͘গͳ͘͢Δͷͩɻʯ ɹɹɹɹɹɹɹɹɹ→ೝෛՙͷݮ - ετϦʔϜΞϥΠϯυνʔϜ - ಛఆͷػೳʹϑΥʔΧεͨ͠νʔϜ -ϓϥοτϑΥʔϜνʔϜ -ڞ௨ͷαʔϏεπʔϧΛఏڙ͢ΔνʔϜ -ΠωΠϒϦϯάνʔϜ -ଞνʔϜͷೳྗ্Λࢧԉ͢ΔνʔϜ
©Fusic Co., Ltd. 23 ίϯΣΠͷ๏ଇɺٯίϯΣΠͷ๏ଇ ίϯΣΠͷ๏ଇ ৫͕ઃܭ͢ΔγεςϜɺͦͷ৫ͷίϛϡχέʔγϣϯߏ͕ө͞ΕͨͷʹͳΔ ٯίϯΣΠͷ๏ଇ ·͍͠γεςϜΞʔΩςΫνϟΛ࣮ݱ͢ΔͨΊʹɺ৫ߏΛͦΕʹ߹Θͤͯઃܭ͢Δ ݱ࣮తͳΞϓϩʔν
• ཧ: ΫϥυωΠςΟϒͳΞʔΩςΫνϟʹ߹Θͤͨ৫ߏมߋ • ݱ࣮: ࣗͷࡋྔͷൣғͰ৫ߏมߋ͕͔͔࣌ؒ͘͠Δ ղܾࡦ ίϯΣΠͷ๏ଇʹج͖ͮɺ৫ͷٕज़ελοΫʹ߹Θͤͨ ServerlessͳγεςϜΞʔΩςΫνϟΛఏڙ͢ΔPlatform EngineeringΛߏங
©Fusic Co., Ltd. 24 Serverless Architectureͷࣗવͳߏ AWSʹ͓͚ΔදతͳServerlessߏ͕ͩɺॏཁͳݪଇͱͯ͠ ແཧʹͯΊΔ͜ͱೝෛՙʹܨ͕ΓServerlessͷਁಁʹܨ͕Βͳ͍
©Fusic Co., Ltd. 25 Platform Engineering ͷEssenceͷద༻ ৫ߏɺίϛϡχέʔγϣϯ͕ө͞Εͨߏʹ Serverless ArchitectureଆΛϑΟοτͤ͞ʹ͍͘
ࠓ·Ͱഓͬͨݟͱฐࣾͷٕज़ελοΫΛ ༥߹ͤ͞ΔͨΊʹTiDB ServerlessΛ࠾༻ MySQLޓ͔ͭΠϯλʔϑΣʔεͱͯ͠ɺ SQL͕͑Δ͜ͱͰࣗવʹ։ൃ͕Մೳʹ͠ ίετϝϦοτʹߩݙ
©Fusic Co., Ltd. 26 ࢲୡͳΓͷPlatform Engineeringͷઓ ΞϓϦέʔγϣϯ։ൃऀ͕PlatformΛબͿ →ձࣾͷٕज़ελοΫʹ߹ΘͤͨPlatformΛඋͯࣗ͠વʹར༻ͯ͠Β͏ ࠓ·ͰServerlessͷ։ൃΛݗҾ͍ͯͨ͠ ͕ࣗࣗ։ൃʹҰՃΘΒͣਐḿ
Platform Engineering ͷతͷҰͭ ೝෛՙͷݮΛୡ
©Fusic Co., Ltd. 27 Platform Engineeringͷ࣮ৄࡉ URL :https://speakerdeck.com/_kensh/platform-engineering-on-serverless @_kensh ϩά
CloudWatch Logs CI / CD GitHub Actions AWS CDK ΨʔυϨʔϧ BiomeɺPHPStanɺPest PlaywrightɺDependabot Observability CloudWatchɺSentryɺX-rayɺSlack
©Fusic Co., Ltd. 28 νʔϜͱಉԽ͢ΔΑ͏ʹServerlessΛϑΟοτͤ͞Δ Serverless
©Fusic Co., Ltd. 29 ํͱίϛϡχςΟ 4
©Fusic Co., Ltd. 30 ํͷڑײͱίϛϡχςΟඇৗʹ૬ੑ͕ྑ͍ ಉ͡ҬɾՁ؍Λڞ༗͢Δؒҙࣝ ڞ௨ͷސ٬: Ҭʹࠜͨ͟͠اۀɺ࣏ࣗମ͕ओཁΫϥΠΞϯτ ڞ௨ͷՁ؍: Ҭີணɺظతؔɺ࣭ॏࢹͷҙࢥܾఆ
Ҭܦࡁͷײ: ʮҰॹʹҬΛΓ্͛Α͏ʯͱ͍͏ڞ௨ඪ ڝ߹Ͱڠྗ͠߹͑Δؔੑ ʮޓ͍ͷڧΈΛ׆͔ͯ͠ڞʹʯͷจԽ ԬͷA͕ࣾPHPɺB͕ࣾΠϯϑϥಘҙ → ڞಉडͰWIN-WIN ίϛϡχςΟؒͰੵۃతʹใڞ༗͠ɺΫϥυར׆༻Λਪ͠ਐΊΔ
©Fusic Co., Ltd. 31 re:light local ৽ׁ ࠓՆ͝Ζ։࠵ ͜͜Ͱ͓͍ͨ͠ͷ͕ʰre:light localʱͰ͢
re:light localํͰͷΫϥυ׆༻Λଅਐ͢ΔاۀؒίϛϡχςΟͰɺ ֤Ҭʹࠜ͘ITاۀϢʔβʔاۀ͕ࢀՃ͠ɺ Ҭಛ༗ͷ՝Λڞ༗ɾղܾ͢Δ͜ͱΛࢦ͍ͯ͠·͢ ࠓճεϙϯαʔͯ͘͠Ε͍ͯΔάϩʔόϧωοτίΞ͞ΜͱҰॹʹ Նࠒʹ৽ׁͰͷ։࠵͕ܾఆͯ͠·͢ʂͥͻ͝ࢀՃ͍ͩ͘͞ʂ
©Fusic Co., Ltd. 32 ҬΛӽ͑ͨίϥϘϨʔγϣϯ ํܥPHPΧϯϑΝϨϯεͷΑ͏ʹҰͭͷҬʹดͣ͡ɺ શࠃ֤ͰҬΛ͑ͨίϥϘϨʔγϣϯ Ҭؒ࿈ܞʹΑͬͯւಓ͔Βभ·Ͱ ଟ༷ͳ՝ͱղܾࡦ͕ू͞Εɺ๛ͳφϨοδϕʔε͕ܗ
©Fusic Co., Ltd. 33 re:light localͷ4ͭͷՁʢ4Cʣ Contentʢίϯςϯπʣɿํͷ࣮ʹ߹Θٕͤͨज़༰ CodeʢίʔυʣɿϋϯζΦϯͰίʔυΞʔΩςΫνϟΛఏڙ ConductorʢਐߦɾӡӦʣɿݩاۀʹΑΔاըɾӡӦ CommunicationʢίϛϡχέʔγϣϯʣɿΠϕϯτޙͷΦϑϥΠϯަྲྀ
ࢀরɿhttps://www.docswell.com/s/takagerbera/K4VJYW-cmc-meetup-sdj2#p7
©Fusic Co., Ltd. 34 ํ͔ͩΒͦ͜ΫϥυͰউͯΔཧ༝ அͷεϐʔυ͕ѹత༏Ґੑ ํͷ՝ʹΫϥυ͕Ϛον͍ͯ͠Δ ີͳίϛϡχςΟͱͷ૬ޮՌ ํ͔ͩΒͰ͖Δʂํͦ͜αʔόʔϨεʂ
©Fusic Co., Ltd. 35 ·ͱΊ ํͦ͜ैྔ՝ۚϞσϧͷԸܙΛ࠷େԽ Point 01 ίϯΣΠͷ๏ଇΛج͍ͮͨνʔϜΞοϓͰΫϥυͷಋೖ Point
02 Platform Engineering·Ͱঢ՚ग़དྷΔͱԣஅతͳՁग़ Point 03
©Fusic Co., Ltd. 36 Thank You We are Hiring! https://recruit.fusic.co.jp/
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠