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
Middleman on Production
Search
Hirofumi Wakasugi
May 19, 2017
Programming
0
160
Middleman on Production
Middleman の本番運用とそれを支えるサービスとか
Hirofumi Wakasugi
May 19, 2017
Tweet
Share
More Decks by Hirofumi Wakasugi
See All by Hirofumi Wakasugi
Racc Introduction
5t111111
1
430
Keep Calm and Enjoy Gachima
5t111111
3
350
Swift Functional Programming
5t111111
0
270
名古屋Ruby会議03 高速一言感想
5t111111
3
1k
ドキュメント翻訳懺悔のLT ~進捗ダメです~
5t111111
1
610
UFO演算子について
5t111111
0
320
Rubyと戯れるOSS DTM
5t111111
4
750
Rubyの拡張をCrystalで書いてみる
5t111111
0
110
YARV INTRODUCTION
5t111111
0
90
Other Decks in Programming
See All in Programming
毎日13時間もかかるバッチ処理をたった3日で60%短縮するためにやったこと
sho_ssk_
1
550
ASP.NET Core の OpenAPIサポート
h455h1
0
110
20241217 競争力強化とビジネス価値創出への挑戦:モノタロウのシステムモダナイズ、開発組織の進化と今後の展望
monotaro
PRO
0
280
AWSのLambdaで PHPを動かす選択肢
rinchoku
2
390
Запуск 1С:УХ в крупном энтерпрайзе: мечта и реальность ПМа
lamodatech
0
950
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
26
6k
Androidアプリのモジュール分割における:x:commonを考える
okuzawats
1
280
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
2
7.7k
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
360
盆栽転じて家具となる / Bonsai and Furnitures
aereal
0
1.8k
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
300
カンファレンス動画鑑賞会のススメ / Osaka.swift #1
hironytic
0
170
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Designing for Performance
lara
604
68k
Making the Leap to Tech Lead
cromwellryan
133
9k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
192
16k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
The Invisible Side of Design
smashingmag
299
50k
Bash Introduction
62gerente
610
210k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Measuring & Analyzing Core Web Vitals
bluesmoon
5
210
The Power of CSS Pseudo Elements
geoffreycrofte
74
5.4k
KATA
mclloyd
29
14k
Transcript
.*%%-&."/ POQSPEVDUJPO 2017/05/19 Tokyo Middleman Meetup #3 Hirofumi Wakasugi (@5t111111)
ࣗݾհ w !)JSPGVNJ8BLBTVHJ !U w !αʔόʔαΠυͰ3VCZPO3BJMT͕ϝΠϯͳϑϦʔϥϯεͰ͢ w ❤4XJGU--7.
None
.JEEMFNBOຊ൪Ͱͬͯ·͢ w ίʔϙϨʔταΠτςΟβʔαΠτ-1 w ϒϩάχϡʔεϖʔδ w ΞʔςΟετΠϕϯταΠτݸਓγϣοϓͱ͔ &$ผαʔϏεͱ͔Ͱ
w FUD ͪΖΜϓϩτλΠϐϯάͰ͏͜ͱ͋Δ
੩తαΠτ͚αʔϏεͷॆ࣮
.JEEMFNBOͷӡ༻Λࢧ͑Δͷͨͪ
"NB[PO4 4UBUJD8FCTJUF)PTUJOH
"NB[PO4 w આ໌ෆཁͳΫϥυετϨʔδαʔϏε w 4UBUJD8FCTJUF)PTUJOHͱ͍͏ػೳͰ੩తαΠτͷϗεςΟϯά͕Մೳ w ͜ͷػೳΛ$*ͱΈ߹Θͤͯ੩తαΠτͷߋ৽γεςϜΛߏங͢Δ
%&7&-01.&/5 130%6$5*0/4
%&7&-01.&/5
%&7&-01.&/5 3&104*503: 164)
%&7&-01.&/5 3&104*503: 164) $*#6*-% 16--
%&7&-01.&/5 3&104*503: 164) $*#6*-% 16-- 130%6$5*0/4 165 45"(*/(4 165
%&7&-01.&/5 3&104*503: 164) $*#6*-% 16-- 130%6$5*0/4 165 %*453*#65*0/ 45"(*/(4
165 $"$)&
%&.0
1SPT w 8FCαʔόʔͷߏங͕ෆཁ w %PDLFSίϯςφͰ.JEEMFNBO্ཱ͕͕ͪΔͷͰ։ൃڥͷߏஙෆཁ w "$.͕͑Δ w (JU
(JU)VC 'MPXతʹϦϦʔε࡞ۀ·Ͱ(JU)VC্ͷૢ࡞͚ͩͰ݁Ͱ͖Δ w ͍͍҆εέʔϥϒϧ
$POT w 44-ԽͷͨΊʹ$MPVE'SPOU͕ඞਢ ΩϟογϡઓུͪΌΜͱΔඞཁ͕͋Δ w ݁ہڥߏஙͷͭΒΈ͋Δ ϫϯόΠφϦͷ)VHPݟͪΌ͏ͱͳ͊ʜ
w 4UBUJD8FCTJUF)PTUJOHͷػೳΛ͏ͱ4ͷΤϯυϙΠϯτ௵ͤͳ͍ w (JU)VC1BHFTͷΑ͏ͳαʔϏεͰेͳ߹ଟ͍ͱࢥ͏
.JEEMFNBOͱ4Ͱ շదͳ੩తαΠτӡ༻Λ⭐ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠
ʁ
͓͍߹Θͤ ϑΥʔϜ͕ཉ͍͠ʁ
(PPHMF'PSNT/( NBJMUPʜ͍͍Θ͚ͳ͍
ϑΥʔϜΛઃஔ͢Δ߹ w Ͳ͏ͯ͠΄ͱΜͲͷ߹όοΫΤϯυ͕ඞཁʹͳΔ w .JEEMFNBOʹ4JOBUSBΛϚϯτ͢Δͱ͔Ͱ͖Δ͕੩తαΠτͷར͕௵ΕΔ w ͏·͍͜ͱόοΫΤϯυଆͷॲཧ͚ͩͲ͏ʹ͔Ͱ͖Ε͍͍͚Ͳʜ
"NB[PO"1*(BUFXBZ "NB[PO-BNCEB 4FSWFSMFTT"SDIJUFDUVSF
"1*(BUFXBZ -BNCEB w "1*(BUFXBZͰ"84্ʹ"1*ͷ3&45GVMͳΤϯυϙΠϯτΛ࡞Δ͜ͱ͕Ͱ͖Δ w ΤϯυϙΠϯτͰड͚ͨϦΫΤετΛ-BNCEBGVODUJPOͰॲཧͰ͖Δ w ͋ͱ4ʹσʔλΛ֨ೲͨ͠Γϝʔϧ௨͢Ε͍͍ w
͍ΘΏΔ4FSWFSMFTT"SDIJUFDUVSFͷจ຺
$-*&/54
$-*&/54 "1*&/%10*/5 46#.*5
$-*&/54 "1*&/%10*/5 46#.*5 '6/$5*0/ */70,&
$-*&/54 "1*&/%10*/5 46#.*5 '6/$5*0/ */70,& /05*'*$"5*0/ 4%"5"4503& 165
$-*&/54 "1*&/%10*/5 46#.*5 '6/$5*0/ */70,& /05*'*$"5*0/ 4%"5"4503& 165 "((3&("5*0/ 26&3:
%&.0
੩తΣϒαΠτ 4FSWFSMFTT"SDIJUFDUVSF❤ w #BB4'BB4ͷॆ࣮͕͔ͳΓ੩తΣϒαΠτʹͱ͍ͬͯ෩ʹͳ͍ͬͯΔ ΤίγεςϜൃలͭͭ͋͠Δ -BNCEBσϓϩΠπʔϧͳͲ w ϑϧϚωʔδυͳαʔϏεͷར༻ʹΑΓ0QTͷίετΛେ෯ʹܰݮ
.JEEMFNBOͰ4FSWFSMFTTʹ շదͳ੩తαΠτӡ༻Λ⭐ ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠
ʁ
χϡʔεϖʔδͷߋ৽Λ ࣗͰΓ͍ͨʁ
ίϯςϯπͷߋ৽͕ߴ͍ w χϡʔεϒϩάͷΑ͏ͳ؆୯ͳίϯςϯπΫϥΠΞϯτࣗͰߋ৽͍ͨ͠ w $.4ͷΑ͏ʹ8:4*8:(ͳฤूը໘͕͋ΔΘ͚Ͱͳ͍ w .JEEMFNBOىಈͯ͠ΤσΟλͰฤूͯ͠QVTIͯ͠Β͏ʁ·͔͞ʜ w 4FSWFSMFTTؾ߹͍Ͱ͕Μͬͯ+40/ฦ͢ͱ͔Ͱ͖ΔͩΖ͏͚Ͳʜ͏ʔΜ
(JU)VC "TB$POUFOU.BOBHFNFOU4ZTUFN
(JU)VCBTB$.4 w (JU)VCʹϑΝΠϧͷฤूΞοϓϩʔυػೳ͕͋Δ w .BSLEPXOͷϓϨϏϡʔػೳ͋Δ w ͋Εʁ͜Ε(JU)VC্Ͱฤूͯ͠QVTIͯ͠Β͏͘Β͍ͳΒͰ͖ΔΜ͡Όͳ͍ʁ
%&.0
(JU)VCBTB$.4 w ؆қͳίϯςϯπͷߋ৽Ͱ͋Ε(JU)VCͰेͳ߹͋Δ w ϢʔβʔͷೝূೝՄͷཧͳͲΛ(JU)VCʹͤΒΕΔ w QVTI$*EFQMPZͷྲྀΕΛ࡞͓͚ͬͯ(JU)VCҎ֎৮Βͳ͍͍ͯ͘ w Γ͍ͨ͜ͱ࣍ୈ͚ͩͲˢ͘Β͍ͳΒ$.4ͷֶशίετΑΓ͍͘Β͍
w ͚Ͳɺ$.4తͳ6*ʹ࠷ॳ͔Β׳Ε͍ͯΔਓ͕ଟ͍ w ߋ৽͕සൟͰ͋ΕͬͺΓී௨ʹ$.4ͷํ͕͍͍ʜ w (JU)VCGPS"UPNͷొͳͲͰࠓޙঢ়گมΘ͍͔ͬͯ͘
·ͱΊ w ੩తαΠτΛ͏͖͔Ͳ͏͔݁ہΓ͍ͨ͜ͱ࣍ୈ w ޙ͔ΒࠔΒͳ͍Α͏ʹͪΌΜͱώΞϦϯά͠·͠ΐ͏Ͷʜͱ͍͏ʜ w ͨͩɺհͨ͠Α͏ͳαʔϏεͷॆ࣮Ͱ੩తαΠτͷద༻ൣғ࣮֬ʹ૿͍͑ͯΔ w ΣϒΞϓϦέʔγϣϯΛߏங͢Δલʹ੩తαΠτͰͷϑΟδϏϦΛݕ౼͢ΔՁ͋Δ
w 41"ͷྲྀΕ͋ΔͷͰɺͦͷͰϑϩϯτ͕੩తαΠτͱ͍͏ιϦϡʔγϣϯ༗
IUUQTXXXTUBUJDHFODPN ੩తαΠτͷݱঢ়
.JEEMFNBO w .JEEMFNBO͏ϞμϯͳπʔϧͰͳ͍ɻ͕ɺ͏ϝϦοτ·ͩ·ͩ͋Δͱࢥ͏ ˒ ϒϩάͷΑ͏ͳ୯७ͳͷ͚ͩͰͳ͘ͲΜͳαΠτͰ࡞ΕΔ ˒ 3VCZͷख़ͨ͠ΤίγεςϜΛར༻Ͱ͖Δ ˒ ΤΫεςϯγϣϯ͕ॻ͖͍͢
˒ &YUFSOBMQJQFMJOF؆୯ʹOQNΛར༻͢Δํ๏ͱͯ͠·͋Α͘Ͱ͖͍ͯΔ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠