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
つくってあそぼうansible
Search
carotene4035
August 10, 2018
0
45
つくってあそぼうansible
carotene4035
August 10, 2018
Tweet
Share
More Decks by carotene4035
See All by carotene4035
GraphQLのN+1問題を解決したい
carotene4035
1
220
読者を置き去りにする技術
carotene4035
13
8.2k
Aws is emotional.
carotene4035
2
280
名称未設定.pdf
carotene4035
0
210
migrationツールについて
carotene4035
0
88
AWSネットワーク入門
carotene4035
3
320
adtech history
carotene4035
0
75
ファイルアクセスに関する脆弱性
carotene4035
0
110
僕らだけのアニメを放映する
carotene4035
3
1.3k
Featured
See All Featured
Designing Experiences People Love
moore
142
24k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
54
3k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
189
55k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
960
Build your cross-platform service in a week with App Engine
jlugia
232
18k
Building Adaptive Systems
keathley
43
2.8k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Docker and Python
trallard
46
3.6k
For a Future-Friendly Web
brad_frost
180
9.9k
Transcript
ୈճ BOTJCMFษڧձ !DBSPUFOF
෭ ॱ൪ʹ૿֮ͯ͑͠ΔBOTJCMF
લճͷϋΠϥΠτ ̍ͭͷαʔόʹ গ͠ͷλεΫʢOHJOYಋೖʣΛ ࣮ߦͨ͠Α ˞Ұݴʹ·ͱΊͯ͠·͍͢Έ·ͤΜɻɻ
લճ͔Β ͍Ζ͍Ζ૿͠·͢ ࠓΔ͜ͱ
w ෳͷαʔόʹগ͠ͷλεΫ w ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ w ෳͷαʔόʹͨ͘͞ΜͷλεΫˑˑˑ ࠓΔ͜ͱ
ͪΐͬͱͣͭ૿͍ͯ͘͠Α ࠓΔ͜ͱ
ߏʹඞཁͳใʢ͓͞Β͍ʣ w Ͳ͜ʹ w ͳʹΛ w ͲͷΑ͏ʹ
BOTJCMFQMBZCPPLJ<JOWFOUPSZ><QMBZCPPL> ߏʹඞཁͳใʢ͓͞Β͍ʣ BOTJCMFQMBZCPPLͷ࣮ߦίϚϯυ
BOTJCMFQMBZCPPLJ<JOWFOUPSZ><QMBZCPPL> Ͳ͜ʹ ͳʹΛ ͲͷΑ͏ʹ ߏʹඞཁͳใʢ͓͞Β͍ʣ BOTJCMFQMBZCPPLͷ࣮ߦίϚϯυ
ෳͷαʔόʹ গ͠ͷλεΫ
<αʔό> ϩʔυόϥϯα "QQαʔό̍ "QQαʔό̎ %#αʔό ෳͷαʔόʹগ͠ͷλεΫ
<λεΫ> αʔό໊Λఆٛʢ͢Δ͚ͩʣ ෳͷαʔόʹগ͠ͷλεΫ
ʮͲ͜ʹʯΛࢦఆ͢Δ *OWFOUPSZ'JMFͷॻ͖ํΛ֬ೝ ෳͷαʔόʹগ͠ͷλεΫ
ෳͷαʔόʹগ͠ͷλεΫ
ෳͷαʔόʹগ͠ͷλεΫ *OWFOUPSZ'JMF͕͔͚ͨͷͰɺૄ௨֬ೝɻ ͯ͢ͷϗετʹରͯ͠QJOHΛૹ৴ɻ
ෳͷαʔόʹগ͠ͷλεΫ BOTJCMFBMMJIPTUTNQJOH
ෳͷαʔόʹগ͠ͷλεΫ
ෳͷαʔόʹগ͠ͷλεΫ ͨͷ͍͠ʂ ✌ Т✌ ࡾ✌ Т ✌ࡾ ✌Т ✌
ࠓճ࣮ߦ͢ΔQMBZCPPL TJUFZNM ෳͷαʔόʹগ͠ͷλεΫ
ෳͷαʔόʹগ͠ͷλεΫ
࣮ߦ͢Δ BOTJCMFQMBZCPPLJIPTUTTJUFZNM A
ෳͷαʔόʹগ͠ͷλεΫ
ෳͷαʔόʹগ͠ͷλεΫ
ෳͷαʔόʹগ͠ͷλεΫ ✌ Т✌ ࡾ✌ Т ✌ࡾ ✌Т ✌
ෳͷαʔόʹগ͠ͷλεΫ ༨ஊ
ෳͷαʔόʹগ͠ͷλεΫ NBD͕ՐΛਧ͖·ͨ͠
ෳͷαʔόʹগ͠ͷλεΫ
ෳͷαʔόʹগ͠ͷλεΫ
ෳͷαʔόʹগ͠ͷλεΫ BOTJCMF@DMJ BQQ BQQ MPBE EC
ෳͷαʔόʹগ͠ͷλεΫ BOTJCMF@DMJ BQQ BQQ MPBE EC
ෳͷαʔόʹগ͠ͷλεΫ HPPHMFݕࡧɹաੵࡌ
ෳͷαʔόʹগ͠ͷλεΫ BOTJCMF@DMJ BQQ BQQ MPBE EC ŠƁŢũʜŠƁŢũʜ
ෳͷαʔόʹগ͠ͷλεΫ EPDLFS͓ SZ
̍ͭͷαʔόʹ ͨ͘͞ΜͷλεΫ
<αʔό> "QQαʔό ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
IPTU໊ॻ͖͑ UJNF[POFॻ͖͑ MJCTFMJOVYQZUIPOಋೖ OUQಋೖ ݴޠઃఆ άϧʔϓͷՃ TVEPϢʔβՃ 30ϢʔβՃ 4'51ϢʔβՃ ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
DPNQPTFSಋೖ HJUಋೖ WJNಋೖ SFNJϦϙδτϦՃ FQFMϦϙδτϦՃ QIQJOTUBMM QIQϞδϡʔϧΛݸ΄ͲՃ QIQJOJϑΝΠϧΛઃஔ QIQGQNJOJͷઃఆ <λεΫ>
ͱΓ͋͑ͣQMBZCPPL TJUFZNM Λ ॻ͍ͯΈΔ ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ ͏ͪΐͬͱ͚ͩ ଓ͘Μ͡Ό
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ ͏ͪΐͬͱͩL
‧▓▒░ bТ ░▒▓‧ ͏Θ͋͋͋͋͋͋͋͋͋͋͋ ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
͍ɻɻ ͪ͝Όͪ͝Όͯ͠ݟʹ͍͘ɻɻ ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
ͦ͜ͰϩʔϧԽ ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
None
None
None
None
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ CFGPSFBGUFS
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
None
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ εοΩϦ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ ࣮ࡍͷσΟϨΫτϦ͜Μͳײ͡
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ TJUFZNM SPMFT
ϩʔϧԽͷԸܙଞʹ͋Δ ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
QMBZCPPLΛॻ͘ͷָ͕ʹͳΔ ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
None
None
ϩʔϧσΟϨΫτϦͷதΛ ΈͯΈ·͢ தΛΈΔͱ͍ͬͯͳ͍ʣ ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ UFNQMBUFT ઃఆϑΝΠϧܥΛஔ͘ॴ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ UFNQMBUFT ઃఆϑΝΠϧܥΛஔ͘ॴ KJOHBͱ͍͏ϑΝΠϧܗࣜͰɺ ɹ\\^^Ͱͬͨ͘͘෦ʹม͕ೖΔ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ WBST มΛஔ͘ॴ EFGBVMUT ɹมΛஔ͘ॴ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ WBST มΛஔ͘ॴ EFGBVMUT ɹมΛஔ͘ॴ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ pMFT ɹϗετʹ্͛ΔϑΝΠϧΛஔ͍͓ͯ͘ॴ ɹʢྫɿHJUIVCͱͷ௨৴༻ൿີ伴ͳͲʣ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ UBTLT λεΫ͕ॻ͔Ε͍ͯΔϑΝΠϧΛஔ͘ॴ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ UBTLT λεΫ͕ॻ͔Ε͍ͯΔϑΝΠϧΛஔ͘ॴ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ UFTUT ϩʔϧ୯ମͰςετΛ͢Δͱ͖ʹ༻͢Δ ɹςετΛద༻͢ΔϗετΛࢦఆ͢ΔͨΊͷ JOWFOUPSZϑΝΠϧΛ͓͘
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ IBOEMFST ɹϦϩʔυ࠶ىಈܥͷॲཧΛ͓͘ ɹʢԆ࣮ߦܥͱ͍͏Β͍͠ɻɻ ɹɹڭ͑ͯ୭͔ʣ ɹUBTLͱಉ͡Α͏ʹॻ͍ͯɺ ɹUBTLTNBJOZNMʹͯOPUJGZϞδϡʔϧΛ ͬͯλεΫݺͼग़͠Λ͢Δ
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ NFUB SPMFͷґଘؔΛهड़͢Δ ɹͭ·Γɺϩʔϧͷத͔ΒଞͷϩʔϧΛಡΈ ࠐΉॲཧ͕͔͚Δ EFQFOEFODJFT \SPMFDPNNPO TPNF@QBSBNFUFS^ \SPMFBQBDIF
BQBDIF@QPSU^
̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ NFUB ಡΈࠐ·Εͨϩʔϧɺ ಡΈࠐΜͰ͍ΔϩʔϧΑΓઌʹ࣮ߦ͞ΕΔɻ ಉ͡ϩʔϧ͕Ҏલʹ࣮ߦ͞Ε͍ͯͨ߹ͦ ͷϩʔϧ࣮ߦ͞Εͳ͍ɻ
BOTJCMFHBMBYZJOJUJOJUQBUIlSPMFTz<SPMF> SPMFͷܗΛੜ͢ΔίϚϯυ ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
ɹɹɹɹɹɹࣗಈͰ͜Ε͕Ͱ͖·͢ ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ
Џ ʀТʆ" Ųŏʜ
ෳͷαʔόʹ ͨ͘͞ΜͷλεΫ
ෳͷαʔόʹͨ͘͞ΜͷλεΫ <αʔό> ϩʔυόϥϯα "QQαʔό̍ "QQαʔό̎ %#αʔό
ෳͷαʔόʹͨ͘͞ΜͷλεΫ *OWFOUPSZ'JMF
ෳͷαʔόʹͨ͘͞ΜͷλεΫ QMBZCPPL SPMFʹ͚ͯɺ TJUFZNMʹάϧʔϓ͝ͱʹSPMF Λهड़͢Δ͚ͩ
ෳͷαʔόʹͨ͘͞ΜͷλεΫ QMBZCPPL
ෳͷαʔόʹͨ͘͞ΜͷλεΫ
ෳͷαʔόʹͨ͘͞ΜͷλεΫ ͪΐͬͱ·ͬͨ
ෳͷαʔόʹͨ͘͞ΜͷλεΫ ϗετݻ༗ͷมͲ͏͢Δͷʁ
ෳͷαʔόʹͨ͘͞ΜͷλεΫ IPTU@WBSTͱ͍͏ σΟϨΫτϦΛ༻ҙ͢Δ
ෳͷαʔόʹͨ͘͞ΜͷλεΫ ɹΠϯϕϯτϦͰࢦఆͨ͠ϗετ໊ͱ ɹಉ໊͡લͷϑΝΠϧΛ༻ҙ͢Δ͜ͱͰɺ ͦͷϗετʹରͯ͠λεΫ͕࣮ߦ͞ΕΔࡍɺ ɹࣗಈͰಡΈࠐ·ΕΔ
ෳͷαʔόʹͨ͘͞ΜͷλεΫ ɹத͜Μͳײ͡ɻ ɹϗετݻ༗ͷઃఆΛཏྻ͢Δɻ ʢڥมͱͯ͠ཧͨ͠΄͏͕ྑ͍ɻ ɹ͋͘·Ͱྫʣ
ෳͷαʔόʹͨ͘͞ΜͷλεΫ άϧʔϓݻ༗ͷมͲ͏͢Δͷʁ
ෳͷαʔόʹͨ͘͞ΜͷλεΫ HSPVQ@WBSTͱ͍͏ σΟϨΫτϦΛ༻ҙ͢Δ
ෳͷαʔόʹͨ͘͞ΜͷλεΫ ɹΠϯϕϯτϦͰࢦఆͨ͠άϧʔϓ໊ͱ ɹಉ໊͡લͷϑΝΠϧΛ༻ҙ͢Δ͜ͱͰɺ ͦͷάϧʔϓʹରͯ͠λεΫ͕࣮ߦ͞ΕΔࡍɺ ɹࣗಈͰಡΈࠐ·ΕΔ
·ͱΊ w ෳͷαʔόʹগ͠ͷλεΫ w ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ w ෳͷαʔόʹͨ͘͞ΜͷλεΫˑˑˑ
·ͱΊ w ෳͷαʔόʹগ͠ͷλεΫ ɹ*OWFOUPSZ'JMFͷॻ͖ํΛ֮͑Εେৎ
·ͱΊ w ̍ͭͷαʔόʹͨ͘͞ΜͷλεΫ ɹSPMFͷΘ͚ํΛ֮͑Εେৎ
·ͱΊ w ෳͷαʔόʹͨ͘͞ΜͷλεΫ ɹมͷಡΈࠐΈํΛ֮͑Εେৎ
·ͱΊ w SPMFΛॻ͚ॻ͘΄ͲɺQMBZCPPLΛॻ͘ͷ ָ͕ʹͳΔ
·ͱΊ w "OTJCMFͨͷ͍͠ΑͶɹͱ͍͏Ͱͨ͠
ٞ w "OTJCMFQMBZCPPLͷཧͷํ ɹϦϙδτϦϓϩδΣΫτ͝ͱʁ ɹͦΕͱͥΜͿ͍ͬ͠ΐʹͪ͠Ό͏ʁ ɹຊ൪ڥɺςετڥɺ։ൃڥͲ͏Θ͚ͯॻ͘ʁ ͳͲ͠߹͑ͨΒخ͘͠ࢥ͍·͢ɻ