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
87
地方の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
歴史から学ぶ「Why PHP?」 PHPを書く理由を改めて理解する / Learning from History: “Why PHP?” Rediscovering the Reasons for Writing PHP
seike460
PRO
0
290
Team-First Serverless Platform Engineering Approach to PHP Applications with Laravel and Bref
seike460
PRO
0
42
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
3
950
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
470
OpenTelemetryで始めるベンダーフリーなobservability / Vendor-free observability starting with OpenTelemetry
seike460
PRO
0
230
AIコーディングの本質は“コード“ではなく“構造“だった / The essence of AI coding is not “code” but "structure
seike460
PRO
2
1.3k
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
1
950
Amazon Q Developer Proで効率化するAPI開発入門
seike460
PRO
0
480
実行委員長が振り返るBacklogWorldの裏側と運営Backlog術 / The chairperson of the executive committee looks back on the backstage of BacklogWorld and the art of managing Backlog.
seike460
PRO
0
26
Other Decks in Programming
See All in Programming
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
150
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
3
650
Developing static sites with Ruby
okuramasafumi
0
330
Implementation Patterns
denyspoltorak
0
140
AIエンジニアリングのご紹介 / Introduction to AI Engineering
rkaga
8
3.4k
新卒エンジニアのプルリクエスト with AI駆動
fukunaga2025
0
240
AI前提で考えるiOSアプリのモダナイズ設計
yuukiw00w
0
200
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
140
TestingOsaka6_Ozono
o3
0
180
Flutter On-device AI로 완성하는 오프라인 앱, 박제창 @DevFest INCHEON 2025
itsmedreamwalker
1
160
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
140
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
220
Featured
See All Featured
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
95k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
130
Highjacked: Video Game Concept Design
rkendrick25
PRO
0
260
Rails Girls Zürich Keynote
gr2m
95
14k
Producing Creativity
orderedlist
PRO
348
40k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
21
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The browser strikes back
jonoalderson
0
240
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
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/
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠