Share
Embed
地方の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
Transcript
36 slides
-
©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. 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. 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. 20 Platform Engineeringͱ -త -։ൃऀମݧͷ্: ෳࡶ͞ΛӅṭ͠ɺຊ࣭తͳ։ൃʹूத -ඪ४Խ:
ϕετϓϥΫςΟεͷࣗಈద༻ -ηϧϑαʔϏεԽ: ։ൃऀ͕ࣗతʹ࡞ۀͰ͖Δڥ -PHPνʔϜͷద༻Ձ -طଘͷLaravelࣝΛͦͷ··׆༻ -Πϯϑϥͷෳࡶ͞Λҙࣝͤͣʹ։ൃ -νʔϜશһ͕ϑϧελοΫ։ൃऀʹ -
©Fusic Co., Ltd. 22 νʔϜτϙϩδʔ 用 : ・ , ・
. ʮϓϥοτϑΥʔϜ։ൃνʔϜͷʰअຐʹͳΒͳ͍ʱΑ͏ʹ͢Δɻ ɹ։ൃνʔϜ͕։ൃ͢Δ্Ͱͷલఏ݅ΛͳΔ͘গͳ͘͢Δͷͩɻʯ ɹɹɹɹɹɹɹɹɹ→ೝෛՙͷݮ - ετϦʔϜΞϥΠϯυνʔϜ - ಛఆͷػೳʹϑΥʔΧεͨ͠νʔϜ -ϓϥοτϑΥʔϜνʔϜ -ڞ௨ͷαʔϏεπʔϧΛఏڙ͢ΔνʔϜ -ΠωΠϒϦϯάνʔϜ -ଞνʔϜͷೳྗ্Λࢧԉ͢ΔνʔϜ -
©Fusic Co., Ltd. 23 ίϯΣΠͷ๏ଇɺٯίϯΣΠͷ๏ଇ ίϯΣΠͷ๏ଇ ৫͕ઃܭ͢ΔγεςϜɺͦͷ৫ͷίϛϡχέʔγϣϯߏ͕ө͞ΕͨͷʹͳΔ ٯίϯΣΠͷ๏ଇ ·͍͠γεςϜΞʔΩςΫνϟΛ࣮ݱ͢ΔͨΊʹɺ৫ߏΛͦΕʹ߹Θͤͯઃܭ͢Δ ݱ࣮తͳΞϓϩʔν
• ཧ: ΫϥυωΠςΟϒͳΞʔΩςΫνϟʹ߹Θͤͨ৫ߏมߋ • ݱ࣮: ࣗͷࡋྔͷൣғͰ৫ߏมߋ͕͔͔࣌ؒ͘͠Δ ղܾࡦ ίϯΣΠͷ๏ଇʹج͖ͮɺ৫ͷٕज़ελοΫʹ߹Θͤͨ ServerlessͳγεςϜΞʔΩςΫνϟΛఏڙ͢ΔPlatform EngineeringΛߏங -
©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. 30 ํͷڑײͱίϛϡχςΟඇৗʹ૬ੑ͕ྑ͍ ಉ͡ҬɾՁ؍Λڞ༗͢Δؒҙࣝ ڞ௨ͷސ٬: Ҭʹࠜͨ͟͠اۀɺ࣏ࣗମ͕ओཁΫϥΠΞϯτ ڞ௨ͷՁ؍: Ҭີணɺظతؔɺ࣭ॏࢹͷҙࢥܾఆ
Ҭܦࡁͷײ: ʮҰॹʹҬΛΓ্͛Α͏ʯͱ͍͏ڞ௨ඪ ڝ߹Ͱڠྗ͠߹͑Δؔੑ ʮޓ͍ͷڧΈΛ׆͔ͯ͠ڞʹʯͷจԽ ԬͷA͕ࣾPHPɺB͕ࣾΠϯϑϥಘҙ → ڞಉडͰWIN-WIN ίϛϡχςΟؒͰੵۃతʹใڞ༗͠ɺΫϥυར׆༻Λਪ͠ਐΊΔ -
©Fusic Co., Ltd. 31 re:light local ৽ׁ ࠓՆ͝Ζ։࠵ ͜͜Ͱ͓͍ͨ͠ͷ͕ʰre:light localʱͰ͢
re:light localํͰͷΫϥυ׆༻Λଅਐ͢ΔاۀؒίϛϡχςΟͰɺ ֤Ҭʹࠜ͘ITاۀϢʔβʔاۀ͕ࢀՃ͠ɺ Ҭಛ༗ͷ՝Λڞ༗ɾղܾ͢Δ͜ͱΛࢦ͍ͯ͠·͢ ࠓճεϙϯαʔͯ͘͠Ε͍ͯΔάϩʔόϧωοτίΞ͞ΜͱҰॹʹ Նࠒʹ৽ׁͰͷ։࠵͕ܾఆͯ͠·͢ʂͥͻ͝ࢀՃ͍ͩ͘͞ʂ -
©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. 35 ·ͱΊ ํͦ͜ैྔ՝ۚϞσϧͷԸܙΛ࠷େԽ Point 01 ίϯΣΠͷ๏ଇΛج͍ͮͨνʔϜΞοϓͰΫϥυͷಋೖ Point
02 Platform Engineering·Ͱঢ՚ग़དྷΔͱԣஅతͳՁग़ Point 03 -
©Fusic Co., Ltd. 36 Thank You We are Hiring! https://recruit.fusic.co.jp/
͝ਗ਼ௌ͍͖ͨͩ͋Γ͕ͱ͏͍͟͝·ͨ͠