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
未来のサーバ基盤へのHaconiwa/mrubyの関わり / haconiwa-and-fut...
Search
KONDO Uchio
February 11, 2017
Technology
2
2k
未来のサーバ基盤へのHaconiwa/mrubyの関わり / haconiwa-and-future-os
@名古屋Ruby会議03
KONDO Uchio
February 11, 2017
Tweet
Share
More Decks by KONDO Uchio
See All by KONDO Uchio
大規模レガシーテストを 倒すための CI基盤の作り方 / #CICD2023
udzura
5
2.4k
Ruby x BPF in Action / RubyKaigi 2022
udzura
0
260
Narrative of Ruby & Rust
udzura
0
230
開発者生産性指標の可視化 / pepabo-four-keys
udzura
3
1.7k
Talk of RBS
udzura
0
450
Re: みなさん最近どうですか? / FGN tech meetup in 2021
udzura
0
790
Dockerとやわらかい仮想化 - ProSec-IT/SECKUN 2021 edition -
udzura
2
740
Device access filtering in cgroup v2
udzura
1
930
"Story of Rucy" on RubyKaigi takeout 2021
udzura
0
850
Other Decks in Technology
See All in Technology
ソフトウェア エンジニアとしての 姿勢と心構え
recruitengineers
PRO
4
770
会社にデータエンジニアがいることでできるようになること
10xinc
9
1.6k
Evolution on AI Agent and Beyond - AGI への道のりと、シンギュラリティの3つのシナリオ
masayamoriofficial
0
180
MySQL HeatWave:サービス概要のご紹介
oracle4engineer
PRO
4
1.7k
広島発!スタートアップ開発の裏側
tsankyo
0
240
モバイルアプリ研修
recruitengineers
PRO
3
260
ZOZOTOWNフロントエンドにおけるディレクトリの分割戦略
zozotech
PRO
18
5.4k
JavaScript 研修
recruitengineers
PRO
3
180
TypeScript入門
recruitengineers
PRO
20
6.6k
知られざるprops命名の慣習 アクション編
uhyo
11
2.5k
microCMS 最新リリース情報(microCMS Meetup 2025)
microcms
0
110
モダンフロントエンド 開発研修
recruitengineers
PRO
3
350
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.4k
Docker and Python
trallard
45
3.5k
Done Done
chrislema
185
16k
Building Adaptive Systems
keathley
43
2.7k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
Facilitating Awesome Meetings
lara
55
6.5k
Thoughts on Productivity
jonyablonski
69
4.8k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Transcript
ίϯςφԾԽͷͦͷઌ ۙ౻͏͓ͪ(.01FQBCP *OD ໊ݹ3VCZձٞ ະདྷͷαʔόج൫ͷ )BDPOJXBNSVCZͷؔΘΓ
ΤϯδχΞ ۙ౻͏͓ͪ!VE[VSB ٕज़ج൫νʔϜϓϦϯγύϧ IUUQVE[VSBIBUFOBCMPHKQ
ΤϯδχΞ ۙ౻͏͓ͪ 'VLVPLBSCΦʔΨφΠβʔ ࡾՏҰٶੜ·Εɺ๛ڮҭͪ ΑΓԬࡏॅ ͖ͳγεςϜίʔϧVOTIBSF ͖ͳѪݝ൧͋Μ͔͚εύ
)BDPOJXBͱԿ͔
֓ཁ
)BDPOJXBͱ wNSVCZͰॻ͔ΕͨίϯςφϥϯλΠϜ wίϯςφϥϯλΠϜͷఆٛ0$* ͷఆٛࢀরɺͨͩ͠ݱঢ়0$*ͷ TQFDΛඞͣ͠ຬ͍ͨͯ͠ͳ͍ wίϯςφʹؔ͢Δ-JOVYLFSOFMͷػೳΛɺඞཁʹԠͯ͡બ͠ɺΈ ߹ΘͤͯίϯςφΛ࡞Ͱ͖Δ IUUQTHJUIVCDPNPQFODPOUBJOFSTSVOUJNFTQFDCMPCNBTUFSHMPTTBSZNESVOUJNF
DG1BESJOPGSBNFXPSL wʮϏϡοϑΣܕͷίϯςφϥϯλΠϜʯͱݴ͑Δ IUUQQBESJOPSCDPN
ίϯςφʹؔ͢Δ-JOVYLFSOFMͷػೳʁ wྫ͑ɺ w -JOVYOBNFTQBDF ϗετ໊ͳͲΛϗετͱಠཱͤͯ͞͏ػೳ w DHSPVQ ϓϩηεͷάϧʔϓ୯ҐͰͷϦιʔεͷ੍ݶɾΞΧϯςΟϯά
w -JOVYDBQBCJMJUZ 04ͷಛݖΛׂ͢Δػೳ w ͳͲ wৄࡉ࡞ͷεϥΠυ͕ศར IUUQTTQFBLFSEFDLDPNVE[VSBUIFTLFMUPOPGXIBMFT
EFNP
ͳͥɺ։ൃ͔ͨ͠
͑ཉ͘͠ͳͬͨͷͰɺ࡞ͬͨ w%PDLFSͱ-9$ͷܦݧ͔ΒɺͬͱॊೈͰܰ͘ɺϓϩάϥϚϒϧͳί ϯςφϥϯλΠϜ͕ཉ͘͠ͳͬͨ wͱͱɺ4RBMFͱݴ͏-9$ϕʔεͷ1BB4ͷӡ༻Λख͍ɺ ͦͷܦݧ͔ΒൃΛελʔτͨ͠ wͦͷ࣌ʹ͑ΔͱΑ͔ͬͨͳ͋ͱ͍͏ཧͷػೳΛ٧ΊࠐΜͰ͍Δ w͜͏͍͏ܦҢͰ։ൃͨ͠ͷͰɺ݁ՌతʹϗεςΟϯάܥ"41ܥͷ αʔϏεͰ͑ΔΑ͏ͳػೳ͕ଟΊʹͳ͍ͬͯΔ
ผղ3VCZ,BJHJۦಈ։ൃʁ wίϯηϓτ͚ͩͰ͖ͨஈ֊Ͱ3VCZ,BJHJ$'1ʹԠืͯ͠͠·ͬͨ wͦͷޙɺ࡞Γ্͛ͨΒҙ֎ͱಈ͍ͨɻʹؒʹ߹ͬͨɻ wͷͰͦͷ͍ͰਐΜͰ͍Δ
)BDPOJXBͱNSVCZͷؔΘΓ
$3VCZNSVCZͷϦϥΠτ wͱͱɺϑϧʹ$3VCZͰॻ͍͍ͯͨ w$3VCZϚϧνεϨουϓϩάϥϜͳͷͰɺίϯςφؔ࿈ͷҰ෦ͷγ εςϜίʔϧ TFUOT VOTIBSF ͷݺͼग़͠ʹ੍ݶ͕͋Δ wλΠϚʔεϨου͕ଘࡏ͢Δ
wNSVCZʹͦͷ੍ݶ͕ͳ͍ͷͰϦϥΠτΛ࣮ࢪͨ͠ wˠҰϲ݄ͰϦϥΠτͰ͖ͨʂ IUUQTHJUIVCDPNIBDPOJXBIBDPOJXBNSJ IUUQNBOPSHMJOVYNBOQBHFTNBOVOTIBSFIUNMଞ
NSVCZΛબΜͰྑ͔ͬͨͱ͜Ζ w$ͷγεςϜίʔϧɺϥΠϒϥϦίʔϧʹΞΫηε͍͢͠ wͦͷ্ͰࣗͰόΠϯσΟϯάΛॻ͖͍͢ wΓ͍ͨ͜ͱͷϝΠϯ$ͱ͍͑ɺ($͋Δ͠ɺจࣈྻૢ࡞ͳͲ ໘ͳ͜ͱ3VCZଆͰߦ͏͜ͱͰ͖ΔͷͰɺੜ࢈ੑΛײ͡Δ
NSVCZDMJͷଘࡏ w)BDPOJXBɺઌड़ͨ͠/BNFTQBDFͳͲͷΞΫηεΛNSVCZHFN ͰόΠϯσΟϯάͯ͠ɺϝΠϯͷॲཧ७ਮʹ3VCZͰॻ͍͍ͯΔ wͦ͏͍͏$-*ΞϓϦέʔγϣϯʹNSVCZDMJศར
)BDPOJXBʹؔ͢Δաڈͷൃද w3VCZ,BJHJ wϖύϘϗεςΟϯάπΞʔͰͷൃද wʮ)BDPOJXBͷ͜Ε·Ͱͱ͜Ε͔Βʯ wʮ)BDPOJXBͷதͱઃܭࢥʯ IUUQTTQFBLFSEFDLDPNVE[VSBNSVCZPODPOUBJOFS IUUQTTQFBLFSEFDLDPNVE[VSBIBDPOJXBPOUIFQBWFNFOU IUUQTTQFBLFSEFDLDPNVE[VSBUIFIBDPOJXBJOUFSOBMT
)BDPOJXB6QEBUFT
)BDPOJXBӶҙ։ൃத w3VCZ,BJHJҎ߱ɺ࠷ۙೖ͖ͬͨ͢ػೳΛհ
$POUBJOFS)PPLT wNSVCZͰ༷ʑͳλΠϛϯάͰϑοΫॲཧΛॻ͚Δ wγάφϧʹରԠͨ͠ϑοΫ wىಈޙͷλΠϜΞτϑοΫ wىಈϓϩηεͰͷҙͷλΠϛϯάͰͷϑοΫॲཧ
.VMUJ$POUBJOFS w&YQFSJNFOUBM wෳͷίϯςφΛىಈՄೳʹͰ͖Δ%4-Λ࣮ͨ͠ɻ wEPDLFSDPNQPTFతɻͨͩ͠ɺOBNFTQBDFͷڞ༗ͳͲɺΑΓॊೈ wएׯͷޙํඇޓ͕͋ΔͷͰɺYͱ͍͏ϒϥϯνͷΈؚΉܗʹ
$3*6ͰҰ෦ͷίϯςφΛอଘՄೳʹͨ͠ w7FSZ&YQFSJNFOUBM wखॱ͕ෳࡶͰɺTMFFQఔͷϓϩάϥϜͰͷޭΛ֬ೝͨ͠ঢ়ଶ w͔͜͠͠Ε͖ͬͱେ͖ͳҰา
αϯϓϧϦϙδτϦΛ࡞ͬͨ wIP͕ಈ͘ wਵ࣌Ճ༧ఆɻ8PSE1SFTTͱ͔ಈ͍ͯΔΜͩ wIUUQTHJUIVCDPNIBDPOJXBFYBNQMFT
)BDPOJXBCPPLΛॻ͖࢝Ίͨ wIUUQTHJUIVCDPNIBDPOJXBCPPL w5IJTTJUFJT+BQBOFTFPOMZ w·ͣҰ௨Γॻ͖·͢
'BTU$POUBJOFSͱ)BDPOJXB ͦͯ͠ະདྷͷελοΫ
'BTU$POUBJOFSͷલఏ
ϗεςΟϯάαʔϏε
ΠϯλʔωοτͰίϯςϯπΛ ఏڙ͢Δਓͨͪʹͱͬͯ շదͳڥΛఏڙ͍ͨ͠
ΠϯλʔωοτͰී௨ʹίϯςϯπΛఏڙ͍ͨ͠ wͦ͏͍͏ਓͨͪʹͱͬͯɺαʔόμϯக໋త w͔ͱ͍ͬͯɺΤϯδχΞͰͳ͍ਓͨͪʹɺΫϥυͷΦʔτεέʔ ϧͳͲͷ։ൃ؆୯Ͱͳ͘ෑډ͕ߴ͍ɻ wϨϯαόͷΑ͏ʹ؆୯ʹ࢝ΊΒΕͯɺ714ͷΑ͏ʹॊೈͰɺ͍͟ͱͳͬ ͨΒεέʔϧ͢ΔΈ͕ཉ͍͠ɻ wͳ͓͔ͭɺӡ༻ऀʹͱͬͯෳࡶ͗ͣ͢ɺӡ༻Մೳੑ͕ߴ͍ͱϕετ
'BTU$POUBJOFSͰ࣮ݱ͍ͨ͠ੈք
'BTU$POUBJOFSͷൃ
ϓϩάϥϜɺࡾͭʹྨͰ͖Δ wJNNPSUBM͍ΘΏΔαʔόɺσʔϞϯ wTIPSUMJWFEόον୯ൃͷίϚϯυɻ͙͢ʹऴྃ͢Δϓϩηε w͜͜ͰɺNPSUBMͱ͍͏ͷΛߟ͑ΒΕͳ͍͔ wࢮΛ໔ΕΒΕͳ͍ɺ·ΔͰੜ໋ͷΑ͏ʹ wΓଓ͚ΔલఏͰͳ͍ɺण໋͕ܾ·͍ͬͯΔϓϩάϥϜ
NPSUBMͳϓϩηεͷྫ wFH'BTU$(*ݹయత͕ͩɺNPSUBMͳཁૉ͕͋Δɻ w$(*ͱσʔϞϯͷதؒ wεςʔτϨε
ίϯςφϕʔεͷੈքͰ 'BTU$(*Λ࠶ઃܭ͢Δ
'BTU$POUBJOFSߏ wϦΫΤετܖػͰϦΞΫςΟϒʹىಈ͢ΔίϯςφΛߟ͑ΒΕͳ͍͔ wલஈͷ8FC1SPYZ͕ϦΫΤετΛड͚औΔ wˠίϯςφΤϯδϯ͕ɺඞཁͳίϯςφΛݕ͠ɺىಈ͢Δ wˠىಈޙɺͦͷ··ϦΫΤετΛࡹ͖ଓ͚Δʹߴ wˠෆཁʹͳͬͨΒɺ͋Δ͍Ұఆ࣌ؒޙʹίϯςφΛআ͢Δ
'BTU$POUBJOFSߏ
DGYJOFUE wଓͷཁٻස͕͍σʔϞϯΛৗற͓ͤͯ͘͞ͷɺ 04ͷϦιʔε্͍ͬͨͳ͍ɻ wͦ͜ͰYJOFUEͷΑ͏ͳεʔύʔαʔόܕσʔϞϯͰɺϙʔτ͚ͩΛ Ϧεϯ͓͖ͯ͠ɺଓཁٻ͕དྷ͔ͯΒߴʹσʔϞϯΛ্ཱͪ͛ɺ ෆཁʹͳͬͨΒσʔϞϯΛམͱ͢͜ͱͰɺ Ϧιʔεͷ׆༻ޮΛྑ͘͢Δ͜ͱ͕Ͱ͖Δɻ
'BTU$POUBJOFSͷಛ wεςʔτϨεͰ͋Δ wෛՙʹԠͯ͡ىಈͷมߋɺεέʔϧΞοϓ͕Ͱ͖Δ wϦΞΫςΟϒͰ͋Δ wϦΫΤετΛܖػʹىಈ͕มߋ͞ΕΔɺޮΑ͘Ϧιʔεར༻ wΓଓ͚ΔલఏͰͳ͍ʹϥΠϑλΠϜ͕ܾ·͍ͬͯΔ wྫ͑ηΩϡϦςΟΞοϓσʔτͳͲ͕͙͢Ͱ͖Δɻӡ༻্ศར
)BDPOJXBY'BTU$POUBJOFS w)BDPOJXB'BTU$POUBJOFSߏʹͱͬͯ༗རͳػೳ͕ଟ͍ wͨ͘͞Μͷ)PPLQPJOU w Ұఆ࣌ؒͰʮࣗͰམͪΔʯίϯςφͷ࣮ݱ w ঢ়گʹԠͯ͡ɺࣗͰࣗͷϦιʔεׂΓͯΛมߋͰ͖Δίϯςφͷ࣮ݱɻىಈϓϩηε ऴྃ࣌ͰͷϑοΫγάφϧϋϯυϥʔ͕ଘࡏ wΠϝʔδߏͷ؆қԽɺىಈͷॖ w
Πϝʔδͷࣄલ࡞ɻCJOENPVOU/'4Λ༻͍ͨॊೈͳߏ w ঢ়گʹԠͯ͡ɺࣗͰࣗͷϦιʔεׂΓͯΛมߋͰ͖Δίϯςφͷ࣮ݱɻىಈϓϩηε ऴྃ࣌ͰͷϑοΫγάφϧϋϯυϥʔ͕ଘࡏ
ίϯςφͱʮ04ʯ
DG,VCFSOFUFT IUUQTUXJUUFSDPNKZPTIJTFTUBUVT
ίϯςφΦʔέετϨʔγϣϯͱ04 wΫϥελϦϯά͞Εͨج൫04ʹɺͨ͘͞ΜͷίϯςφΛ্ཱͪ͛ͯ ͍Δͱɺ·ΔͰ wίϯςφ͕ͨͩͷεϨουʹɺίϯςφͷάϧʔϓ͕ϓϩηεʹ wΫϥελϦϯά͞Εͨ04͕Ұͭͷ04ʹ wࢥ͑ͯ͘Δ wͦ͏͢ΔͱɺγεςϜίʔϧʹ૬͢Δͷ͕ཉ͘͠ͳΔ
͔ͦ͜Β ҰาਐΊͯ
%JNFOTJPOGSFF"VUPOPNPVT 0QFSBUJOH4ZTUFN
%"04ͱ wഁյͱ࠶ߏஙΛNPSUBMʹߦ͍ɺಈతʹฏߧঢ়ଶΛอͭγεςϜ wίϯςφɺͲΜͲΜ ೖΕସΘ͍ͬͯ͘ w༷ʑͳίϯϙʔωϯτΛɺ ωοτϫʔΫΛհͯ͠แׅ͢Δ IUUQTTQFBLFSEFDLDPNNBUTVNPUP@SSFBDUJWFTUBUFMFTTBOENPSUBMBSDIJUFDUVSFGPSXFCBQQMJDBUJPOTɹ
ैདྷͷ04ͱͷൺֱ w%"04ʹ͓͍ͯ wεϨουˠ'BTU$POUBJOFS wΧʔωϧˠͦΕͧΕͷ୯Ұͷ-JOVYΛ·ͱΊͨ֓೦ wͦͷ্Ͱɺଟ͘ͷίϯςφϓϩάϥϜͷ"1*Λ࣋ͭ)BDPOJXBΛɺ γεςϜίʔϧͱͯ͠࠶ఆٛ͢Δ͜ͱ͕Ͱ͖ΔͷͰͳ͍͔ʁ w)BDPOJXBͦͷʮʯͷ্ͷ͍࣮ͪͱ͍͏ཱͪҐஔͱݟ၏͢
DG4FSWFSTQFDTQFDJOGSB IUUQTTQFBLFSEFDLDPNVE[VSBUIFIBDPOJXBJOUFSOBMT IUUQTHJUIVCDPNNJ[[ZTFSWFSTQFDUIFTJTQVMMJTTVFDPNNFOU
ະདྷͷʮ04ʯΛ 'BTU$POUBJOFS )BDPOJXBͰ
·ͱΊ
%"04'BTU$POUBJOFS)BDPOJXB ͰͳΊΒ͔ͳγεςϜΛ࡞Δ
͜ͷΈ ࣮ࡍͷαʔϏεʹద༻ͭͭ͠ ݕূ͍ͯ͘͠
ҰॹʹαʔϏεΛ࡞Γ·͠ΐ͏ ࠷৽ͷ࠾༻ใΛνΣοΫˠ !QC@SFDSVJU
5IBOLTࣸਅ wIUUQNBYQJYFMGSFFHSFBUQJDUVSFDPN.BOTJPO.JOJBUVSF .JOJBUVSF)PVTF&YQPTVSF(BSEFO$$ wIUUQTQJYBCBZDPNQ OP@SFEJSFDU$$ wIUUQTQJYBCBZDPNFOTPBQCVCCMFTCMPX DPMPSGVM$$ wIUUQTQJYBCBZDPNFOTQBDFVOJWFSTFTQBDFUSBWFM $$