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
shiro16
October 24, 2019
Technology
0
1.1k
minne の開発環境の変革と今後
Kubernetes Meetup Tokyo #24
shiro16
October 24, 2019
Tweet
Share
More Decks by shiro16
See All by shiro16
minne のアーキテクチャの進化とこれから
shiro16
1
3.3k
Rails6 upgrade タイムアタック
shiro16
2
2.6k
telepresence で始める k8s 時代のローカル開発
shiro16
10
5.7k
minne での検索改善の歴史
shiro16
1
2.3k
minne でのハイブリッドクラウド運用
shiro16
1
1.8k
マイクロサービス事始め@技術編
shiro16
0
1.2k
Other Decks in Technology
See All in Technology
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
130
OpenID BizDay#17 KYC WG活動報告(法人) / 20250219-BizDay17-KYC-legalidentity
oidfj
0
250
2024.02.19 W&B AIエージェントLT会 / AIエージェントが業務を代行するための計画と実行 / Algomatic 宮脇
smiyawaki0820
13
3.5k
Larkご案内資料
customercloud
PRO
0
650
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
1
730
2/18/25: Java meets AI: Build LLM-Powered Apps with LangChain4j
edeandrea
PRO
0
120
分解して理解する Aspire
nenonaninu
1
200
エンジニアが加速させるプロダクトディスカバリー 〜最速で価値ある機能を見つける方法〜 / product discovery accelerated by engineers
rince
4
370
Oracle Cloud Infrastructure:2025年2月度サービス・アップデート
oracle4engineer
PRO
1
220
表現を育てる
kiyou77
1
210
飲食店予約台帳を支えるインタラクティブ UI 設計と実装
siropaca
7
1.8k
エンジニアの育成を支える爆速フィードバック文化
sansantech
PRO
3
1.1k
Featured
See All Featured
Adopting Sorbet at Scale
ufuk
74
9.2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
440
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Gamification - CAS2011
davidbonilla
80
5.1k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
Being A Developer After 40
akosma
89
590k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
The Invisible Side of Design
smashingmag
299
50k
The Cult of Friendly URLs
andyhume
78
6.2k
It's Worth the Effort
3n
184
28k
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ΞϓϦΤϯδχΞͷؾܰʹյͤΔ ΠϯϑϥڥΛఏڙͰ͖ͨ
͋Γ͕ͱ͏͍͟͝·ͨ͠