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
minne の開発環境の変革と今後
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
shiro16
October 24, 2019
Technology
1.1k
0
Share
minne の開発環境の変革と今後
Kubernetes Meetup Tokyo #24
shiro16
October 24, 2019
More Decks by shiro16
See All by shiro16
minne のアーキテクチャの進化とこれから
shiro16
1
3.5k
Rails6 upgrade タイムアタック
shiro16
2
2.9k
telepresence で始める k8s 時代のローカル開発
shiro16
10
5.9k
minne での検索改善の歴史
shiro16
1
2.5k
minne でのハイブリッドクラウド運用
shiro16
1
1.9k
マイクロサービス事始め@技術編
shiro16
0
1.3k
Other Decks in Technology
See All in Technology
システムは「動く」だけでは足りない 実装編 - 非機能要件・分散システム・トレードオフをコードで見る
nwiizo
4
400
Amazon S3 Filesについて
yama3133
2
150
目的ファーストのハーネス設計 ~ハーネスの変更容易性を高めるための優先順位~
gotalab555
7
1.8k
Azure Static Web Apps の自動ビルドがタイムアウトしやすくなった状況に対応した件/global-azure2026
thara0402
0
340
AWS Agent Registry の基礎・概要を理解する/aws-agent-registry-intro
ren8k
1
200
AI時代における技術的負債への取り組み
codenote
0
960
ネットワーク運用を楽にするAWS DevOps Agent活用法!! / 20260421 Masaki Okuda
shift_evolve
PRO
2
170
Azure Lifecycle with Copilot CLI
torumakabe
3
980
明日からドヤれる!超マニアックなAWSセキュリティTips10連発 / 10 Ultra-Niche AWS Security Tips
yuj1osm
0
510
AWS認定資格は本当に意味があるのか?
nrinetcom
PRO
1
250
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
74k
AIを共同作業者にして書籍を執筆する方法 / How to Write a Book with AI as a Co-Creator
ama_ch
2
120
Featured
See All Featured
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
The Invisible Side of Design
smashingmag
302
51k
Code Reviewing Like a Champion
maltzj
528
40k
Accessibility Awareness
sabderemane
0
99
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.6k
The untapped power of vector embeddings
frankvandijk
2
1.7k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
130
The Curse of the Amulet
leimatthew05
1
11k
Exploring anti-patterns in Rails
aemeredith
3
320
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Transcript
ޙ౻རത(.01FQBCP *OD LVCFSOFUFTNFFUVQUPLZP NJOOFͷ։ൃڥͷมֵͱࠓޙ
νʔϑςΫχΧϧϦʔυ 5PTIJIJSP(PUP!@TIJSP NJOOFࣄۀ෦ δϣʔδΞͷXFC$.ʹग़ͯΔਓ
None
ࠓճ͢Δ wNJOOFͷߏͷ w,VCFSOFUFTಋೖҎલͷ։ൃڥͷ w,VCFSOFUFTಋೖҎޙͷ։ൃڥͷ wࠓޙͷ։ൃڥͷ
ࠓճ͠ͳ͍ wͳͥ,VCFSOFUFTͷҠߦΛߦͳ͔ͬͨʁ w࣮ࡍͷ,VCFSOFUFTҠߦͷ͓
NJOOFͷͬ͘͟Γͱͨ͠ߏͷ
None
None
LTಋೖҎલͷ։ൃڥ
ϩʔΧϧͷ։ൃڥ wEPDLFSͰ֤ίϯςφΛ্ཱ͍ͪ͛ͯΔ w֤ϛυϧΣΞNZTRM&MBTUJDTFBSDISFEJTNFNDBDIFEFUDʜ wϚΠΫϩαʔϏεԽ͞Ε֤ͨαʔϏε w։ൃ͢ΔαʔϏεࣗମΛ্ཱͪ͛ΔࡍϩʔΧϧͰ্ཱͪ͛ΔPSϩʔ ΧϧͷEPDLFS্Ͱ্ཱͪ͛Δ wਓʹΑͬͯҧ͏
چϩʔΧϧ։ൃڥͰͷ՝ wͳΜ͔յΕͨ wEPDLFS্Ͱίϯςφ্ཱ͕͕͍ͪͬͯͳ͍͚ͩ wίϯςφىಈ·ͱΊͯίϚϯυͰ͖ΔΑ͏ʹͳ͍ͬͯΔ͕ʜ wϝϞϦͷͱ͔Ͱࢮ͵ίϯςφ͕͍ͨΓ w֤छUPLFO͕ݹ͍ w࠷৽ͷNBTUFSΛ͓ͬͯΒ֤ͣछUPLFO͕ݹͯ͘ىಈ࣌ʹࢮ͵ wͦͷʹਓʑ͕Կ͕յΕͨͷ͔ௐࠪ͢Δඞཁ͕͋Δ
ϦϞʔτͷ։ൃڥ w&$૬ͷTFSWFSΛෳ༻ҙ wԿނ͔ಈͷ໊લͰڥΛ༻ҙ͍ͯͨ͠ wϝΠϯͱͳΔαʔϏεҎ֎ڞ௨ͷͷ w֤ϛυϧΣΞڞ௨ͷͷ wσʔλຊ൪ͷσʔλΛϚεΫͨ͠ͷ
None
։ൃͷྲྀΕ ϩʔΧϧͰ։ൃ ͜ͷࡍͷಈ࡞֬ೝMPDBMIPTUͱ͔Ͱߦ͏ Πϯλʔωοτӽ͠ʹಈ࡞֬ೝ লུՄೳ
ϦϞʔτͷ։ൃڥʹEFQMPZΛߦ͏ ϦϞʔτͷυϝΠϯΛࢦఆͯ͠ΞΫηε͠ಈ࡞֬ೝΛߦ͏
ਓʑ͕૿͑ͨ͜ͱͰ͕ʜ
چϦϞʔτ։ൃڥͰͷ՝ wਓʑ͕૿͑ͨ͜ͱͰϦϞʔτ։ൃڥͷ͕Γͳ͘ͳͬͯདྷͨ wCPUʹ୭͕ͬͯΔ͔Ѳͯ͠Β͏Α͏ʹͳͬͨ wۭ͍ͯͳ͚Ε୭͔ʹৡͬͯΒ͏ wશ෦͍ͬͯͨΒͪ wͱΓ͋͑ͣΛ૿ͤղܾ͢Δ wਓʑ͕૿͑Δͱ·ͨಉ͘͡૿͢ඞཁ͕ʜ w ৗʹ͏Α͏ͳڥ͡Όͳ͍ͷͰ ίετʜ
None
ͲͷΑ͏ʹ՝Λղܾ͔ͨ͠ʁ
LTҠߦ࣌ʹରԠ
None
LTҠߦޙͷ։ൃڥ
ϩʔΧϧͷ։ൃڥ wҎલͱಉ͡ਓ͍Δ w৽ڥͷਓ։ൃ͢ΔαʔϏεͷΈEPDLFS্ʹίϯςφΛىಈ wਖ਼֬ʹUFMFQSFTFODFܦ༝Ͱىಈͯ͠Β͏ wΠϯλʔωοτӽ͠ͷΞΫηεΛϩʔΧϧͷEPDLFSʹྲྀ͢͜ͱ͕ Մೳ w֤ϛυϧΣΞϦϞʔτڥͷͷʹଓ͕Մೳ
ղܾ͞ΕͨϩʔΧϧͷ։ൃڥͷ wͳΜ͔յΕͨ wEPDLFS্Ͱίϯςφ্ཱ͕͕͍ͪͬͯͳ͍͚ͩ wίϯςφىಈ·ͱΊͯίϚϯυͰ͖ΔΑ͏ʹͳ͍ͬͯΔ͕ʜ wϝϞϦͷͱ͔Ͱࢮ͵ίϯςφ͕͍ͨΓ w֤छUPLFO͕ݹ͍ w࠷৽ͷNBTUFSΛ͓ͬͯΒ֤ͣछUPLFO͕ݹͯ͘ىಈ࣌ʹࢮ͵ wͦͷʹਓʑ͕Կ͕յΕͨͷ͔ௐࠪ͢Δඞཁ͕͋Δ
ݸਓͷڥͷґଘ͕Լ
ϦϞʔτͷ։ൃڥ wݸਓͰQPEΛॴ༗Ͱ͖Δ ਖ਼֬ʹXFCBQJ͕͋ΔͷͰQPE wOHJOYJOHSFTTDPOUSPMMFSΛ༻ͯ͠υϝΠϯຖʹΞΫηεΛྲྀ͢ TWDΛࢦఆ w֤ϛυϧΣΞڞ௨ wUFMFQSFTFODFΛ͏ࡍ͜ͷQPEΛ͏
ղܾ͞ΕͨϦϞʔτ։ൃڥͰͷ՝ wਓʑ͕૿͑ͨ͜ͱͰϦϞʔτ։ൃڥͷ͕Γͳ͘ͳͬͯདྷͨ wCPUʹ୭͕ͬͯΔ͔Ѳͯ͠Β͏Α͏ʹͳͬͨ wۭ͍ͯͳ͚Ε୭͔ʹৡͬͯΒ͏ wશ෦͍ͬͯͨΒͪ wͱΓ͋͑ͣΛ૿ͤղܾ͢ΔOPEF૿͔͢ wਓʑ͕૿͑Δͱ·ͨಉ͘͡૿͢ඞཁ͕ʜ w ৗʹ͏Α͏ͳڥ͡Όͳ͍ͷͰ ίετʜ
ۭ͖ͷ֬ೝ͕ͪͳ͘ͳΓੜ࢈ੑ61 ίετ%08/
None
ϦϞʔτ։ൃڥͷߏ wOHJOYJOHSFTTDPOUSPMMFSΛ༻ͯ͠υϝΠϯຖʹΞΫηεΛྲྀ͢ TWDΛࢦఆ wొ͞ΕͨJOHSFTTFYUFSOBMEOTΛ༻ͯ͠3PVUFʹొ ͠ ͔͕ͨͬͨʜ wTLB⒎PME LBOJLP LVTUPNJ[FΛ༻ͯ͠ϦϞʔτͰͷJNBHF
CVJMEෳڥʹରԠ wEFQMPZTMBDLͷ*OUFSBDUJWF.FTTBHFTΛ༻ͨ͠CPU͕ߦ͏
TLB⒎PME wJNBHFͷ࡞EFQMPZΛࣗಈԽ wZBNMͰཧͰ͖Δ wLTͷNBOJGFTUT %PDLFSpMFΛ͏ wEFWϞʔυͩͱίʔυʹมߋ͕͋ͬͨࡍʹࣗಈͰEFQMPZ wޙड़͢ΔLVTUPNJ[FLBOJLPͱΈ߹ΘͤΔ͜ͱ͕Մೳ
LVTUPNJ[F wෳڥʹରԠͨ͠NBOJGFTUΛੜͰ͖Δ wPWFSMBZΛ͏ wQSPEVDUJPOTUBHJOHFUDʜ wLVTUPNJ[BUJPOZBNMΛ͏ wKTPOQBUDIΛ͑ॊೈʹมߋՄೳ
LBOJLP wίϯςφͰJNBHFCVJMEΛͯ͘͠ΕΔ wEPDLFSDPNNBOE͕ෆཁ w%PDLFSpMFΛݩʹJNBHFΛCVJME wCVJMEͨ͠JNBHFಛఆͷ3FHJTUSZʹQVTIͯ͘͠ΕΔ
FYUFSOBMEOT w*OHSFTTTFSWJDFͷઃఆΛݩʹ"843PVUF(PPHMF $MPVE%/4ͷ%/4Ϩίʔυͷߋ৽Λߦ͏ w3PVUFͰ͏߹*".ϙϦγʔͷՃ͕ඞཁ w*OHSFTTTFSWJDFΛফͨ͠ࡍͷڍಈ੍ޚՄೳ w%/4Ϩίʔυআ͢ΔPS͢ w͔͠͠NJOOFͰ3PVUFͱDMVTUFSͷؒʹSPMFTFSWFS͕ڬ· ΔͷͰ༻͍ͯ͠ͳ͍
EFQMPZCPU wฐࣾͷPHJEPX͕TMBDLJOUFSBDUJWFNFTTBHFΛ͏CPUͷ GSBNFXPSLΛ༻ wIUUQTHJUIVCDPNPHJEPXHPCPU wJOUFSBDUJWFNFTTBHFͷύϥϝʔλΛݩʹίϚϯυΛ࣮ߦ͠࠷ऴతʹ TLB⒎PMESVOΛ࣮ߦ͢Δ wQPEͷೖΕସ͕͑ऴΘͬͨࡍʹTMBDLʹ௨
None
UFMFQSFTFODF wϦϞʔτͷLVCFSOFUFTDMVTUFSʹଓ͠ͳ͕ΒɺαʔϏεΛϩʔΧ ϧͰ࣮ߦ͢Δ͜ͱ͕Մೳ wϩʔΧϧͷ։ൃϚγϯΛLVCFSOFUFTDMVTUFSͷҰ෦ͷΑ͏ʹಈ࡞͞ ͤΔ͜ͱ͕Մೳ
ৄࡉͪ͜Β
ࠓޙͷ
৽ڥͰݟ͑ͯདྷͨ՝
৽ڥͰͷ՝ wϩʔΧϧͰͷ։ൃͰҎલͱͯ͠EPDLFSίϯςφΛ্ཱ͍ͭͪ͘ ͍͛ͯΔਓ͍Δ wUFMFQSFTFODF͏ࡍʹEPDLFSTZOD͏ͷͰϝϞϦ͕ݫ͍͠ ಛ ʹσβΠφʔ wJNBHFσΧ͗͢ wCVJMEʹ͔͔࣌ؒΔ wLTʹ׳Εͯͳ͍ނʹτϥϒϧγϡʔςΟϯάʹ͕͔͔࣌ؒΔ
ࠓޙऔΓΉඞཁ͕͋Γͦ͏ͳ՝
ࠓޙऔΓΉඞཁ͕͋Γͦ͏ͳ՝ wϚΠΫϩαʔϏεԽ͕ਐΜͩࡍʹͲ͜·ͰݸਓͷڥΛ͚Δ͔ w֤αʔϏεͷશQPEΛݸਓຖʹ༻ҙ͢Δ͔ʁ w্هͱ߹Θ֤ͤͨϛυϧΣΞΛݸਓຖʹ͚Δ͔
͜ΕΒͷ՝Λղܾ͠ͳ͕Β ͬͱ໘ന͍͜ͱ͕Ͱ͖ͳ͍͔ʁ Λߟ͍͑ͯΔ͕ʜ
·ͱΊ
·ͱΊ wLTҠߦʹͬͯچ։ൃڥͷ՝ΫϦΞͰ͖ͨ wUFMFQSFTFODFΛ͏͜ͱͰچϩʔΧϧͱچϦϞʔτΛϋΠϒϦου Խͨ͠Α͏ͳڥʹͳͬͨ w·ͩLTͷԸܙΛશʹड͚Ε͍ͯͳ͍ͷ͔͠Εͳ͍ w৽ͨͳ՝͋ΔͷͰཁվળ wϚΠΫϩαʔϏεԽ͕ਐΜͰ͍͘ͱ৽͍͠՝͕ൃੜͦ͠͏ w෭࣍తޮՌͱͯ͠"OESPJEJ04ΞϓϦΤϯδχΞͷؾܰʹյͤΔ ΠϯϑϥڥΛఏڙͰ͖ͨ
͋Γ͕ͱ͏͍͟͝·ͨ͠