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
Immutable Infrastructureが開発プロセスに与える影響(仮) #immut...
Search
Naoya Ito
March 25, 2014
Technology
12k
30
Share
Immutable Infrastructureが開発プロセスに与える影響(仮) #immutableinfra
Naoya Ito
March 25, 2014
More Decks by Naoya Ito
See All by Naoya Ito
Haskell を武器にして挑む競技プログラミング ─ 操作的思考から意味モデル思考へ
naoya
12
4.2k
Haskell でアルゴリズムを抽象化する / 関数型言語で競技プログラミング
naoya
21
7.8k
Functional TypeScript
naoya
18
6.8k
TypeScript 関数型スタイルでバックエンド開発のリアル
naoya
77
38k
シェルの履歴とイクンリメンタル検索を使う
naoya
16
6.7k
20230227-engineer-type-talk.pdf
naoya
91
86k
関数型プログラミングと型システムのメンタルモデル
naoya
63
110k
TypeScript による GraphQL バックエンド開発
naoya
29
37k
フロントエンドのパラダイムを参考にバックエンド開発を再考する / TypeScript による GraphQL バックエンド開発
naoya
67
25k
Other Decks in Technology
See All in Technology
個人の発見を、組織の知恵に 〜生成AI活用を"探索"から"組織の仕組み"へ〜
kintotechdev
2
980
ルールやカスタム機能、どう使う?理想の出力を引き出すために今知りたいIBM Bob 5つの機能
muehara
1
330
「コーディング」しない人のための Claude Code 入門 ChatGPT の次の一歩 — 業務に組み込む 育成・共有・自動化
rfdnxbro
2
1.2k
美味しいスイスチーズを作ろう🧀🐭
taigamikami
1
240
地元にいないローカルオーガナイザーの立ち回り
uvb_76
1
470
生成 AI × MCP で切り拓く次世代 SRE!自律型運用への挑戦と開発者体験の進化
_awache
0
150
AI Adaptable なテストを整える工夫 / Ways to Make Your Tests AI-Adaptable
bitkey
PRO
3
210
形式手法特論:公平性制約の位相的特徴づけ #kernelvm / Kernel VM Study Kansai 12th
ytaka23
1
750
BigQuery の Cross-cloud Lakehouse への歩み
phaya72
2
550
「速く作る」から「正しく作る」へ ─ 生成AI時代の開発フロー改革の ロードマップと実行 ─
starfish719
0
7.6k
電子辞書Brainをネットに繋げてみた(自力編)
raspython3
0
480
【Gen-AX】20260530開催_JJUG CCC 2026 Spring
genax
0
420
Featured
See All Featured
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
460
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
300
A Modern Web Designer's Workflow
chriscoyier
698
190k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
190
Design in an AI World
tapps
1
220
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
Six Lessons from altMBA
skipperchong
29
4.3k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
320
Are puppies a ranking factor?
jonoalderson
1
3.5k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
Transcript
*NNVUBCMF*OGSBTUSVDUVSF ͕։ൃϓϩηεʹ༩͑ΔӨڹ Ծ !OBPZB@JUP *NNVUBCMF*OGSBTUSVDUVSF$POGFSFODF
*NNVUBCMF*OGSBTUSVDUVSF • %JTQPTBCMF$PNQPOFOUT • ෆมͳɺঢ়ଶΛ࣋ͨͳ͍ɺഇغՄೳͳ
αʔόʔͷঢ়ଶ • ͋Δೲ͞Εͨ3BJMTαʔόʔ – 9݄9ʹ%/4ΩϟογϡΛઃఆͨ͠ – :݄:ʹϓϩηεΛνϡʔχϯάͨ͠ – ;݄;ʹSVCZͷόʔδϣϯΛ্͛ͨ –
ŋŋŋ ͍Ζ͍Ζ܁Γฦ͠ • ͜ͷαʔόʔʹৼΓʹ3BJMTΞϓϦΛσϓϩ Π – Ռͨͯ͠σϓϩΠਖ਼͘͠ऴΘΔͷ͔
αʔόʔͷঢ়ଶΛཧ͢Δ • खॱॻ • ࣗಈԽ • αʔόʔཧσʔλϕʔε
• $IFG 1VQQFU
ঢ়ଶཧ͕໘ͳΒɺঢ়ଶΛ ཧ͠ͳ͚Εྑ͍͡Όͳ͍
h"p://chadfowler.com/blog/2013/06/23/immutable-‐deployments/
#MVF(SFFO%FQMPZNFOU
΄ΒɺΈΜͳ8JOEPXTௐࢠѱ͘ͳΔͱ ࠶Πϯετʔϧͯͨ͠͡Όͳ͍Ͱ͔͢ɻ ͋ΕͰ͢Α͋Ε
)FSPLV )FSPLVHJUQVTI͢Δຖɺ৽͍͠ڥ ίϯςφ Λ࡞Γɺݹ͍ڥΛغͯΔ
5SBWJT$* 5SBWJT$*ςετΛ࣮ߦ͢ΔͨͼɺίϯςφΛ࡞ΓऴΘͬͨΒغͯΔ
࣌ؒʹ ճσϓϩΠ h"p://www.publickey1.jp/blog/12/amazon11000_aws_reinventday2_am.html
*NNVUBCMF*OGSBTUSVDUVSF Λࢧ͑Δٕज़ • ίϯςφ – -JOVYͳΒ-9$ͳͲ • ίϯςφΛӡ༻͢Δपล࣮ – FH%PDLFS
%PDLFS
*NNVUBCMF*OGSBTUSVDUVSF ͱ ͍ۙকདྷͷ ։ൃϓϩηε
ઌʹαϚϦ*NNVUBCMFʹͳΔӨڹ • *NNVUBCMFͳ੍ˠΞϓϦέʔγϣϯΞʔΩ ςΫνϟ ઃܭ ଟେͳӨڹ • ʮ࠶ݱՄೳʯͳΞϓϦέʔγϣϯ • ςετ༰қੑͷ্
• ্ॻ͖σϓϩΠ͔ΒίϯςφϕʔεσϓϩΠ – ݁ՌɺΑΓਝͳܧଓσϓϩΠ͕Մೳʹ ΞϓϦέʔγϣϯ։ൃऀແࢹ͍ͯ͠ΒΕͳ͍ ઃܭ։ൃϓϩηεͷมԽ
ΞʔΩςΫνϟͷӨڹ • *NNVUBCMFŋŋŋ͋Δҙຯෆࣗ༝ʹͳΔ – αʔόʔڥ͕ෆࣗ༝ʹͳΔ – ͦͷෆࣗ༝͞ΛΞϓϦέʔγϣϯ͕ड͚༰Ε Δඞཁ͕͋Δ – Ώ͑ʹɺαʔόʔΞʔΩςΫνϟىҼͰΞϓ ϦέʔγϣϯΞʔΩςΫνϟ੍͕ݶ͞ΕΔ
੍ • ੍ඞͣ͠ѱ͍ͷͰͳ͍ – ྫ3&45 – ྫεςʔτϨεͳ)551ͱ888
5IF5XFMFWF'BDUPS"QQ h"p://twelve-‐factor-‐ja.herokuapp.com/ (オリジナル: h"p://12factor.net/)
• ϓϩηεεςʔτϨε͔ͭ4IBSFE /PUIJOHͰ͋Δ • ઃఆΛίʔυ͔Βݫີʹ͢Δ͜ͱΛ ཁٻ͢Δ • ͯ͢ͷ ύοέʔδͷ ґଘؔΛґଘ
ؔએݴϚχϑΣετͰશ͔ͭݫີʹ એݴ͢Δ #VOEMFSͳͲͷ h"p://twelve-‐factor-‐ja.herokuapp.com/ より引用
݁Ռͱͯ͠ŋŋŋ • ηοτΞοϓࣗಈԽͷͨΊʹએݴతͳϑΥʔϚοτΛ͍ɺ ϓϩδΣΫτʹ৽͘͠ՃΘͬͨ։ൃऀ͕ཁ͢Δ࣌ؒͱίετ Λ࠷খԽ͢Δ • Լͷ04ͷґଘؔΛ໌֬Խ͠ɺ࣮ߦڥؒͰͷҠ২ੑΛ ࠷େԽ͢Δ • ϞμϯͳΫϥυϓϥοτϑΥʔϜ্ͷσϓϩΠʹదͯ͠
͓ΓɺαʔόʔཧγεςϜཧΛෆཁͳͷʹ͢Δɻ • ։ൃڥͱຊ൪ڥͷࠩҟΛ࠷খݶʹ͠ɺΞδϦςΟΛ࠷େ Խ͢ΔܧଓతσϓϩΠΛՄೳʹ͢Δɻ • πʔϧɺΞʔΩςΫνϟɺ։ൃϓϥΫςΟεΛେ෯ʹมߋ͢ Δ͜ͱͳ͘εέʔϧΞοϓͰ͖Δɻ h"p://twelve-‐factor-‐ja.herokuapp.com/ より引用
*NNVUBCMFͳ੍͕ͨΒ͢ྑ͍Өڹ • 5XFMFWF'BDUPS"QQ)FSPLVͰϗετ ͢Δ4BB4Λഎܠʹهड़͞Εͨจॻ • ੍͕ΞϓϦέʔγϣϯઃܭʹٴ΅͢ ྑ͍ Ө ڹ –
ྫεςʔτϨε͔ͭ4IBSFE/PUIJOHˠΞϓϦ έʔγϣϯͷ࠶ݱੑ্ *NNVUBCMFͰ͋Δͱ͍͏Ұݟෆࣗ༝ͳ੍͕ɺΠϯϑϥӡ༻͚ͩ Ͱͳ͘ɺΞϓϦέʔγϣϯͷઃܭʹ·Ͱྑ͍ӨڹΛٴ΅͢
ʮ࠶ݱՄೳʯͳΞϓϦέʔγϣϯ • Ͳ͜Ͱ࠶ݱͰ͖Δ͔Β – BTB4FSWJDFʹ์ΓࠐΉ͜ͱ͕Ͱ͖Δ • 1MBUGPSNBTB4FSWJDFɺ$*BTB4FSWJDFɺ $%BTB4FSWDJDFŋŋŋ • ΞϓϦέʔγϣϯͷަՄೳੑ
– ։ൃڥͱϓϩμΫγϣϯΛಉҰࢹͰ͖Δ – ԣల։ͷεέʔϧ͕༰қʹͳΔ
ςετ༰қੑ • ʮ࠶ݱՄೳʯʮεςʔτϨε͔ͭγΣΞʔυφογϯ άʯ – ŋŋŋ͍͔ʹςετ͍͢͠ h"p://www.slideshare.net/techblogyahoo/jenkins-‐withdocker-‐131220
্ॻ͖σϓϩΠ͔Β ίϯςφϕʔεͷσϓϩΠ • طଘͷڥΛ্ॻ͖͢ΔͷͰͳ͘ɺΦϯσϚϯυͰ৽͍͠ڥΛ ࡞Γग़͢ – ࢼߦ༰қੑϒϥϯν͝ͱʹΞϓϦ 2VJQQFSࣾޙड़ –
Γ͠Մೳੑ#MVF(SFFO%FQMPZNFOU "NB[PO
2VJQQFSࣾͷࣄྫ • GFBUVSFCSBODIͷQVTIͷͨͼɺ)FSPLVͰΞϓϦέʔγϣϯ Λ࡞Δ • ඇ։ൃऀͱ63-Λަͯ͠ɺ࣮ڥͰ͙͢ʹϨϏϡʔͰ͖Δ • *NNVUBCMF*OGSBTUSVDUVSFͰಈతɾϙʔλϒϧʹͳ͍ͬͯ͘ͱɺ ͜͏͍͏͜ͱ͕Մೳʹͳ͍ͬͯ͘ͱ͍͏ྑ͍ࣄྫ h"p://blog.madoro.org/mn/93
*NNVUBCMF*OGSBTUSVDUVSFͷݱࡏ • ։ൃऀ͕ࢼߦࡨޡΛ܁Γସ͍͑ͯ͠Δஈ֊ • ͍Ζ͍Ζඞཁͳ෦͕࡞ΒΕ͍ͯΔ – %PDLFSɺNFTPTEPDLFSɺTFSG • ʮ1SJWBUFͳ1BB4͕ཉ͍͠ʯͰͳ͘ʮطଘΠϯϑϥ ͷҰ෦Λಈతʹ͍ͨ͠ʯͱ͍͏Ϣʔβʔ͕
– શ෦)FSPLVͰ0,Ͱͳ͍Ͱ͢͠ • ϢʔβʔίϯςφϕʔεͷσϓϩΠͷརӹΛମײ࢝͠ Ί͍ͯΔ
͜Ε͔Β • *NNVUBCMF*OGSBTUSVDUVSFʹΑͬͯɺࠓ·Ͱݻఆత ͩͱߟ͍͑ͯͨίϯϙʔωϯτ͕ಈతɾΦϯβϑϥΠʹ ͳ͍ͬͯ͘ – ੜ͖ͷΑ͏ʹγεςϜͷܥશମ͕ಈ͘ྖҬ·ͨҰา • ࡢࠓͷαʔόʔΠϯϑϥύϥμΠϜͷूେͱͯ͠ͷ *NNVUBCMF*OGSBTUSVDUVSF
– ͍Ζ͍Ζͳ֓೦ɺ࣮͕͜ͷߟ͑ํʹू͞Ε͍ͯ͘ – ݁ՌతʹɺΞϓϦέʔγϣϯઃܭ։ൃϓϩηεӨڹΛड͚ Δɺͱࢥ͏ɻ