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
Beyond the Twelve-Factor App
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Kazuya Takahashi
August 30, 2016
Technology
25k
5
Share
Beyond the Twelve-Factor App
クラウドネイティブアプリケーションの設計パターン「Beyond the Twelve-Factor App」の紹介
Kazuya Takahashi
August 30, 2016
More Decks by Kazuya Takahashi
See All by Kazuya Takahashi
ソリューションカンパニーの開発組織はどう成長してきたのか
tayasu
0
370
ポイントシステム基盤を支える技術
tayasu
0
560
サーバレス?で重たいバッチ処理
tayasu
1
1k
Other Decks in Technology
See All in Technology
生成AIに振り回されない 〜確率論と決定論の使い分け〜
shukob
0
110
JavaScript実装の自作プログラミング言語をTypeScript実装に移行した話
keisukeikeda
1
150
Splunk MCPサーバの利活用事例 ーKINTOテクノロジーズの取り組み
kintotechdev
1
320
AIコーディングエージェントの活用で、コードは静かに肥大化した
yosukeshinoda
1
340
老舗OCIクラウドインテグレーターが語る-現場で培ったクラウドリフトのリアルと成功のカギ
shinpy
0
120
既存プロダクトQAから新規プロダクトQAへ
ryotakahashi
0
200
TypeScript の型で副作用の実行順序を制御する
yanaemon
2
210
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.5k
イベントで大活躍する電子ペーパー名札 〜その3〜 / ビジュアルプログラミングIoTLT vol.23
you
PRO
0
130
RubyでRuby拡張を書いたらRubyより35倍速になったってどういうこと??
kazuho
3
600
TypeScript で Platform SDK を作る技術
toiroakr
1
270
その英語学習、AWSで代替できませんか?
suzutatsu
1
240
Featured
See All Featured
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.2k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
550
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
220
Scaling GitHub
holman
464
140k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
The Language of Interfaces
destraynor
162
26k
The browser strikes back
jonoalderson
0
1.1k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
700
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
200
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
The Twelve Factor App 12 Cloud NATIVE APPLICATION PATTERNS 2016.08.26
Kazuya Takahashi @REALWORLD Beyond
About me The Twelve Factor App 12 Beyond גࣜձࣾϦΞϧϫʔϧυ(. גࣜձࣾ3&"-'*/5&$)$50
∁ڮ ΞδϟΠϧͰϑϧελοΫͳҙࣝߴ͍ΤϯδχΞ ݸਓͰ-*7&"(&ͱ͍͏Իָʷ8&#ͳूஂͷҰһͰ͢ IUUQTMJWFBHFUPEBZ
the Twelve-Factor App )FSPLVͷதͷਓ͕ʹॻ͍ͨɺϞμϯͳΫϥυΞϓϦέʔγϣϯͷϕ ετϓϥΫςΟε͕ʮ5IF5XFMFWF'BDUPS"QQʯ ࠷ۙɺ.BSUJO'PXMFSࢯͷϒϩάهࣄʮ4FSWFSMFTT"SDIJUFDUVSFTʯͰ/FU'MJY ͷ"ESJBO$PDLDSPGUࢯͷʠΦʔέʔɺͦΕ͕Ͳ͏ͨ͠ɻ͠ࢲ͕༏लͳ 'BDUPS"QQͷσϕϩούʔͳΒɺίʔυͷॻ͖ํʹԿͷҧ͍͕͋Δͷ͔ʡͱ͍ ͏ίϝϯτ͕৺ʹͬͨ͞ͷͰɺվΊͯ'BDUPSʹֶ͍ͭͯΜͰΈ·ͨ͠ɻ The
Twelve Factor App 12 Beyond
the Twelve-Factor App 'BDUPS"QQΛௐͯݟ͚ͭͨͷ͕ʮ#FZPOEUIF5XFMWF'BDUPS"QQʯ ΦϦδφϧ'BDUPS"QQඇৗʹ༗༻͕ͩɺʹॻ͔ΕͨͷͰঢ়گ͕ มΘ͖͍ͬͯͯΔɻಛʹ"84Λ࢝Ίͱͨ͠ΫϥυڥΛ׆༻ͨ͠ΫϥυωΠ ςΟϒΞϓϦέʔγϣϯͷ৽ͨͳϕετϓϥΫςΟεͱͯ͠ɺʹ1JWPUBM ͕ࣾɺΦϦδφϧͷݸͷΨΠυϥΠϯͷΞοϓσʔτͱݸͷ৽ͨͳΨΠυϥ ΠϯΛՃͨ͠ͷ͕#FZPOEUIF'BDUPS"QQͰ͢ɻ Beyond
The Twelve Factor App 12 Beyond
01. One Codebase, One Application όʔδϣϯཧ͞Ε͍ͯΔͭͷίʔυϕʔεʹͭͷΞϓϦέʔγϣϯ The Twelve Factor App
12 Beyond
01. One Codebase, One Application ΫϥυωΠςΟϒΞϓϦέʔγϣϯɺ୯ҰͷϦϙδτϦͰཧ͞Εͨίʔυ ϕʔεΛ࣋ͪɺෳͷҟͳΔڥʹϦϦʔε͞ΕΔɻ ෳͷνʔϜ͕ɺಉ͡ϦϙδτϦͰҟͳΔػೳΛ։ൃ͢ΔͱɺͭͷΞϓϦέʔ γϣϯͰͳ͘ͳͬͯ͠·͏ͨΊɺϚΠΫϩαʔϏεԽΛݕ౼͖͢Ͱ͋Δɻ ʠΞʔΩςΫνϟ৫ʹ͕ͨ͠͏ɻ৫ΞʔΩςΫνϟʹ͕ͨ͠͏ʡʙίϯ
ΣΠͷ๏ଇ The Twelve Factor App 12 Beyond
02. API First αʔϏεͷߏங"1*ͷઃܭ͔Β࢝ΊΔ The Twelve Factor App 12 Beyond
02. API First ϞόΠϧϑΝʔετ͔Β"1*ϑΝʔετɻ"1*ͩͱෳαʔϏεͷ࿈ܞɺε ϚϗΞϓϦͱ8&#ΞϓϦͷΑ͏ͳϚϧνσόΠεʹରԠͰ͖Δɻ "1*ͷઃܭ"1*υΩϡϝϯτ࡞πʔϧΛར༻͢Δɻ4XBHHFS"1* #MVFQSJOUͱ"QJBSZͱ͍ͬͨπʔϧΛ͑ɺ"1*υΩϡϝϯτ͔Βɺίʔυ 4%,ɺϞοΫαʔόͳͲΛੜ͢Δ͜ͱ͕Ͱ͖Δɻ "1*ϑΝʔετͷγεςϜɺ༷͕໌֬ʹఆٛ͞Ε͍ͯΔͷͰɺςετ͕ॻ͖ ͘͢ɺ$*ڥͰγεςϜΛҡ͍࣋ͯ͘͠ࣄ͕Ͱ͖Δɻ
The Twelve Factor App 12 Beyond
03. Dependency Management ґଘؔΛ໌ࣔతʹએݴ͢͠Δ The Twelve Factor App 12 Beyond
03. Dependency Management ϥΠϒϥϦͷཧɺ1)1ͷ$PNQPTFSɺ3VCZͷ(FNɺ/PEFKTͷOQNͳͲ ͷύοέʔδཧγεςϜΛར༻͢Δ͜ͱʹΑͬͯɺΞϓϦέʔγϣϯ͕Ͳͷϥ ΠϒϥϦʹґଘ͍ͯ͠Δ͔͕໌֬ʹͳΓɺγεςϜ࣮ߦڥʹґଘ͠ͳ͍ɻ γεςϜʹΠϯετʔϧ͞Ε͍ͯΔͰ͋Ζ͏DVSM*NBHF.BHJDLͳͲͷπʔϧ Λ͏߹ɺকདྷҧ࣮ͬͨߦڥͰΘΕͨ߹ʹଘࡏ͍ͯ͠ͳ͍Մೳੑ͕͋ ΔͷͰɺΞϓϦέʔγϣϯଆͰཧ͢Δ͖Ͱ͋Δɻ The
Twelve Factor App 12 Beyond
04. Design, Build, Release, Run ઃܭɺϏϧυɺϦϦʔεɺ࣮ߦ The Twelve Factor App
12 Beyond
04. Design, Build, Release, Run ઃܭɿΞϓϦέʔγϣϯࣄલʹશ෦ઃܭ͢ΔͷͰͳ͘ɺઃܭͱίʔσΟϯά Λখ͍͞୯ҐͰ܁Γฦ͠ߦ͍ͬͯ͘ɻ ϏϧυɿϦϙδτϦͰࢦఆ͞ΕͨίʔυϕʔεͷґଘؔΛղܾ͠ίϯύΠϧɻ ϩʔΧϧڥͰಉ༷ͷखॱΛߦ͑ϩʔΧϧͰಈ͍͕ͨຊ൪Ͱಈ͔ͳ͍ͱ͍͏ ൃੜ͠ͳ͍ɻ
ϦϦʔεɿϏϧυ͞ΕͨͷΛڥຖͷσϓϩΠઃఆͱ݁߹ͯ͠ϦϦʔεɻϦϦʔ εඞͣҰҙͳ*%Λ࣋ͪɺϩʔϧόοΫͰ͖ΔΑ͏ʹ͢Δɻ$BQJTUSBOPͩͱλ ΠϜελϯϓΛͬͨσΟϨΫτϦɺ%PDLFSͩͱλάɻ The Twelve Factor App 12 Beyond
04. Design, Build, Release, Run The Twelve Factor App 12
Beyond ࣮ߦɿϦϦʔε͞ΕͨίϯςφͳͲͷϓϩηεΛىಈ࣮ͯ͠ߦɻϩʔΧϧͰϏϧ υ࣮ͯ͠ߦͨ͠ͷ͕ɺ$*$%ύΠϓϥΠϯΛ௨ͯ͡ɺͦͷ··ෳͷΫϥυ ڥͰ࣮ߦ͞ΕΔɻ
05. Configuration, Credentials, and Code ઃఆΛڥมʹ֨ೲ͢Δ The Twelve Factor App
12 Beyond
05. Configuration, Credentials, and Code ઃఆೝূใίʔυ͔Β͖͢Ͱ͋ΓɺόʔδϣϯཧʹؚΉ͖Ͱ ͳ͍ɻ·ͨɺڥ͝ͱʢEFW QSPEʜʣʹઃఆΛάϧʔϐϯά͖͢Ͱͳ͍ɻ ڥແݶʹ૿͍͑ͯ͘Մೳੑ͕͋Δɻ ઃఆΛ͢ΔҰ൪ͷํ๏ڥมͷ֨ೲͰ͋Δɻίʔυमਖ਼͢Δ͜ͱͳ͘
σϓϩΠ͝ͱʹ؆୯ʹมߋͰ͖ɺݴޠ04ʹґଘ͠ͳ͍ϑΥʔϚοτɻ ઃఆͱίʔυ͕Ͱ͖͍ͯΔ͔ͷ֬ೝɺࠓ͙͢ʹͰίʔυΛΦʔϓϯιʔ εԽͰ͖Δ͔Ͳ͏͔ͰΘ͔Δɻ The Twelve Factor App 12 Beyond
06. Logs ϩάΛΠϕϯτετϦʔϜͱͯ͠ѻ͏ The Twelve Factor App 12 Beyond
06. Logs ΫϥυωΠςΟϒΞϓϦέʔγϣϯαʔό͕؆୯ʹ૿ݮͨ͠ΓɺҰ࣌తͳε τϨʔδ͔͠ͳ͍߹͋ΔͷͰɺϑΝΠϧγεςϜʹґଘ͠ͳ͍Α͏ʹɺϩά ͷग़ྗઌετϨʔδʹ͍ͭͯҰؔͤͣɺ࣮ߦதͷϓϩηεΠϕϯτε τϦʔϜΛඪ४ग़ྗʹॻ͖ग़͠ɺ࣮ߦڥͰετϦʔϜΛॲཧ͢ΔqVFOUE $MPVE8BUDI-PHTͳͲͰॲཧ͢Δɻ ϩάΛूͨ͠Γੳ͍ͨ͠߹ɺ5SFBTVSF%BUB&-,ελοΫ &MBTUJD4FBSDI -PHTUBTI
BOE,JCBOB ͳͲΛར༻͢Δɻ The Twelve Factor App 12 Beyond
07. Disposability ߴͳىಈͱάϨʔεϑϧγϟοτμϯͰݎ࿚ੑΛ࠷େԽ͢Δ The Twelve Factor App 12 Beyond
07. Disposability ΫϥυωΠςΟϒΞϓϦέʔγϣϯͷϓϩηεഇغ༰қੑʢߴͳϓϩηε ͷىಈͱऴྃʣ͕େͰ͋Δɻ"84-BNCEBͳͲϦΫΤετ͝ͱʹҰ࣌తͳ ϓϩηε͕ىಈͯ͠ॲཧ͢ΔͨΊىಈ࣌ؒͷॖॏཁͰ͋Δɻ ·ͨىಈ͕͍࣌ؒͱɺϦϦʔε࡞ۀεέʔϧΞοϓૉૣ͘ߦ͑ΔΑ͏ʹͳ Γɺ։ൃϓϩηεߴԽ͢Δɻ The Twelve Factor
App 12 Beyond
08. Backing services όοΫΤϯυαʔϏεΛΞλον͞ΕͨϦιʔεͱͯ͠ѻ͏ The Twelve Factor App 12 Beyond
08. Backing services σʔλϕʔεϝʔϧαʔόͳͲͷόοΫΤϯυͷαʔϏεɺαʔυύʔςΟ ͷαʔϏεΛ"1*ͳͲΛ௨ͯ͡ར༻͢Δࣄ͕૿͍͑ͯΔͷͰɺΞλον͞ΕͨϦ ιʔεͱͯ͠ѻ͍ɺ؆୯ʹΓସ͑ͯར༻Ͱ͖ΔΑ͏ʹ͢Δɻ The Twelve Factor App
12 Beyond σʔλϕʔεͷ"NB[PO3%4ɺ 4.51ͷ1PTUpYͱ$VFOPUF434 4FOE(SJEɺΩϡʔͷ #FBOTUBMLEͱ424ͳͲɻ
08. Backing services αʔυύʔςΟͷαʔϏεΛ͏߹ɺαʔϏε͕μϯ͢ΔͱίωΫγϣϯͷ λΠϜΞτ͕ͪൃੜͯ͠ɺଞͷॲཧμϯͯ͠͠·͏Մೳੑ͕͋ΔͨΊɺ $JSDVJU#SFBLFSύλʔϯΛ࠾༻͢ΔͱΑ͍ɻ The Twelve Factor App
12 Beyond $JSDVJU#SFBLFSύλʔϯͱɺϦϞʔτΞΫηεͷޭʗࣦഊΛΧϯτ͠ɺΤϥʔ͕ᮢΛ ͑ͨͱ͖ʹࣗಈతʹΞΫηεΛःஅ͢ΔΈɻ WJBࢄαʔϏεڥͷ$JSDVJU#SFBLFSͷద༻-*/&&OHJOFFST#MPH
09. Environment Parity ͯ͢ͷڥΛͰ͖Δ͚ͩҰகͤͨ͞ঢ়ଶΛอͭ The Twelve Factor App 12 Beyond
09. Environment Parity ։ൃڥɾεςʔδϯάڥɾຊ൪ڥͳͲͷෳͷڥͰ͖Δ͚ͩΪϟοϓ Λ࡞ΒͣʹҰகͤ͞Δɻڥ͝ͱʹΪϟοϓ͕࡞ΒΕΔཁҼओʹʮ࣌ؒʯ ʮਓʯʮϦιʔεʢόοΫΤϯυαʔϏεʣʯͷͭɻ ࣌ؒɿຊ൪ڥͷϦϦʔεग़དྷΔݶΓظؒʢ࣌ؒ୯ҐʣͰߦ͏ɻ ਓɿίʔυΛॻ͘ਓͱσϓϩΠ͢Δਓಉ͡ਓ͕୲͢Δɻͦͯ͠σϓϩΠ ΞΫγϣϯͰ؆୯ʹͰ͖ΔΑ͏ʹ͢Δɻ The
Twelve Factor App 12 Beyond
09. Environment Parity ϦιʔεɿϩʔΧϧڥͱຊ൪ڥ$IFG%PDLFSͳͲΛར༻ͯ͠ग़དྷΔݶΓ Ұகͨ͠όοΫΤϯυαʔϏεΛ͏ɻຊ൪.Z42-ͰϩʔΧϧ42-JUFɺ ຊ൪NFNDBDIFEͰϩʔΧϧΠϯϝϞϦͳͲͱ͍͏Ϊϟοϓ࡞Βͳ͍ɻ ڥͷҰக࣌ؒͱखؒΛ͔͚ͯͰߦ͏͖Ͱ͋Δɻ શͯͷίϛοτσϓϩΠީิͱͯ͠ɺͲͷڥͰಈ͘Α͏ʹ৺͕͚Δɻ The Twelve
Factor App 12 Beyond
10. Administrative Processes ཧλεΫΞϓϦέʔγϣϯ͔Β͢Δ The Twelve Factor App 12 Beyond
10. Administrative Processes ΦϦδφϧ'BDUPS"QQͰཧλεΫΛΞϓϦέʔγϣϯʹ࣮ɺ͘͠ 3&1-ʢ3BJMTͷQSZ-BSBWFMͷUJOLFSͳͲʣΛ׆༻͢Δͱͳ͍ͬͯΔ͕ɺ #FZPOE൛ͰҟΛএ͍͑ͯΔɻ ΞϓϦέʔγϣϯͱҰॹͩͱεέʔϧΞτ࣌ʹແͷཧλεΫ͕ىಈͯ͠͠ ·͏͔͠Εͳ͍ɻ·ͨΫϥυωΠςΟϒͳΞϓϦέʔγϣϯDSPOͳͲͷσʔ Ϟϯ͕͑ͳ͍࣌͋Δɻ 4Ͱ੩తαΠτɺ-BNCEBͰνϟοτϘοτͱ͔
·ͨɺΞϓϦέʔγϣϯͷཧλεΫͷηΩϡϦςΟΛߟ͑ͳ͍ͱ͍͚ͳ͍ɻ The Twelve Factor App 12 Beyond
10. Administrative Processes ཧλεΫΞϓϦέʔγϣϯ෦Ͱ࣮ͤͣʹɺ"84-BNCEBͳͲͰཧλ εΫઐ༻ͷΫϥυωΠςΟϒΞϓϦέʔγϣϯΛ࡞Δ͖Ͱ͋Δɻ ηΩϡϦςΟͷߟྀ͕ݶఆతͱͳΓɺΞϓϦέʔγϣϯ͕ͲΜͳʹεέʔϧΞ τͯ͠ӨڹΛ͏͚ͳ͍ɻ The Twelve Factor
App 12 Beyond
11. Port binding ϙʔτόΠϯσΟϯάΛΊͯίϯςφͱͯ͠αʔϏεΛެ։͢Δ The Twelve Factor App 12 Beyond
11. Port binding ΦϦδφϧ'BDUPS"QQͰΞϓϦέʔγϣϯΛϙʔτΛόΠϯυͯ͠αʔϏ εͱͯ͠ެ։͢Δͱͳ͍ͬͯΔ͕ɺΫϥυωΠςΟϒΞϓϦέʔγϣϯίϯ ςφ୯ҐͰαʔϏεͱͯ͠ެ։͢Δɻ ·ͨϩʔΧϧͰMPDBMIPTUɺຊ൪ڥͰBQQFYBNQMFDPNͱڥʹ ΑͬͯϙʔτΛόΠϯυ͢Δ߹ڥมʹΑͬͯมߋ͕Ͱ͖ΔΑ͏ʹ͢Δɻ The Twelve
Factor App 12 Beyond
12. Stateless Processes γΣΞʔυφογϯάύλʔϯʹΑΔεςʔτཧ The Twelve Factor App 12 Beyond
12. Stateless Processes ΞϓϦέʔγϣϯͷϓϩηεશͯεςʔτϨεͱͳΓɺηογϣϯͳͲͷঢ়ଶ ཧʹγΣΞʔυφογϯάͳόοΫΤϯυαʔϏεΛར༻͢Δɻ ΫϥυωΠςΟϒΞϓϦέʔγϣϯͷϑΝΠϧγεςϜҰ࣌తͳͷϦʔ υΦϯϦʔͷ߹͋ΔͨΊόοΫΤϯυαʔϏεͱͯ͠༻͖͢Ͱͳ͍ɻ ·ͨΠϯϝϞϦΩϟογϡɺϓϩηεىಈ࣌ʹϝϞϦΩϟογϡ͢Δͱϓ ϩηεഇغ༰қੑͰड़ͨΞϓϦέʔγϣϯͷϓϩηεىಈߴԽΛ્͢Δͨ Ίɺ3FEJTͳͲͷΩϟογϡαʔϏεΛ͏͖Ͱ͋Δɻ
The Twelve Factor App 12 Beyond
13. Concurrency εέʔϧΞοϓͰͳ͘εέʔϧΞτͰϓϩηεΛ૿͢ The Twelve Factor App 12 Beyond
13. Concurrency εςʔτϨε͔ͭγΣΞʔυφογϯάͰഇغ༻ҙͳϓϩηεΛ࣋ͭΫϥυω ΠςΟϒΞϓϦέʔγϣϯɺෳͷΠϯεϯεΛ্ཱͪ͛ͯεέʔϧΞτ͢ Δ͜ͱ͕ɺ$16Λ্͛ͨΓϝϞϦΛ૿ͨ͠Γ͢ΔεέʔϧΞοϓΑΓ؆୯Ͱޮ ՌతͰ͋Δɻ The Twelve Factor App
12 Beyond
14. Telemetry େͳΫϥυͰͷϦϞʔτࢹ The Twelve Factor App 12 Beyond
14. Telemetry ΦϦδφϧͷ'BDUPS"QQʹແ͍߲ɻࢹʹ"1. ύϑΥʔϚϯε ɺ ,1* Ϗδωεࢦඪ ɺࢮ׆ࢹͷ͕ͭඞཁɻΫϥυωΠςΟϒΞϓϦέʔγϣ ϯ༷ʑͳΠϯεϯεʗόοΫΤϯυαʔϏεʗαʔυύʔςΟαʔϏεͰߏ ͞ΕΔͨΊࢹ͕ෳࡶ໘ʹͳͬͯ͠·͏ͷͰɺઃܭஈ֊͔Βࢹํ๏Λݕ౼͢
͖Ͱ͋Δɻ "1.ɿ/FX3FMJD (BOHMJB %BUB%PH ,1*ɿ(PPHMF"OBMZUJDT 5SFBTVSF%BUB 3FETIJGU ࢮ׆ࢹɿ/BHJPT $MPVE8BUDI $MPVE5SBJM The Twelve Factor App 12 Beyond
15. Authentication and Authorization ϩʔϧϕʔεͷೝূͱೝՄ The Twelve Factor App 12
Beyond
15. Authentication and Authorization ΦϦδφϧͷ'BDUPS"QQʹແ͍߲ɻΫϥυωΠςΟϒΞϓϦέʔγϣ ϯͷηΩϡϦςΟରࡦ3#"$ 3PMF#BTF"DDFTT$POUSPMM ͕ద͍ͯ͠ΔɻΞ ϓϦέʔγϣϯͲͷϢʔβʔ͕ϦΫΤετ͍ͯ͠Δͷ͔Λೝূ͠ɺͦͷϢʔβʔ ͕ଐ͍ͯ͠Δϩʔϧ͔Β࣮ߦͰ͖ΔॲཧΛೝՄ͢Δɻ
ैདྷͷόοΫΤϯυαʔϏεͱͷଓͰ*1Ͱͷ੍ݶ͕ଟ͍͕ɺΠϯελϯε͕ ૿ݮͨ͠ΓҰ࣌తͳͷͰ͋Δ߹*1ཧ͕͍ͨ͠ΊɺϢʔβʔͱಉ༷ʹ 3#"$͕༗ޮͰ͋Δɻ The Twelve Factor App 12 Beyond