@Pepabo Tech Conference #15 - ECプラットフォームSUZURIの開発の裏側 https://pepabo.connpass.com/event/215058/
46;63*`TGPVSLFZTੜ࢈ੑΛՄࢹԽ͍ͨۙ͠౻Ӊஐ࿕(.01FQBCP *ODϖύϘςοΫΧϯϑΝϨϯε1IPUPCZTBHBSQSBEIBOIUUQTQJYBCBZDPNJNBHFTJE
View Slide
QFQBCPUFDI
γχΞɾϓϦϯγύϧΤϯδχΞۙ౻ Ӊஐ࿕ / @udzurahttps://blog.udzura.jp/Uchio Kondoٕज़෦ ٕज़ج൫νʔϜ/σʔλج൫νʔϜ/ԬΦϑΟεΤϯδχΞΧϑΣʢԬࢢẂנจԽձؗʣ αϙʔλʔDuolingo Diamond Leaguer 💎#Rust #Ruby #mruby #Containers #eBPF #CRIU #Seccomp#RubyKaigi #CloudNativeDays #Zumba #γϨϯ #FitBoxing2
5P$wੜ࢈ੑΛܭଌ͢Δw۩ମతͳख๏wܭଌ͢Δରwܭଌ͢ΔͨΊͷπʔϧํ๏w࣮ࡍͷܭଌྫwࠓޙ
ੜ࢈ੑΛܭଌ͢Δ
l'PVS,FZTzwʮΤϦʔτ%FW0QTνʔϜͰ͋Δ͜ͱΛ'PVS,FZTϓϩδΣΫτͰ֬ೝ͢ΔʯwlιϑτΣΞ։ൃνʔϜͷύϑΥʔϚϯεΛࣔ͢zࢦඪΛܭଌ͢ΔॏཁੑwDGʮ-FBOͱ%FW0QTͷՊֶʯIUUQTDMPVEHPPHMFDPNCMPHKBQSPEVDUTHDQVTJOHUIFGPVSLFZTUPNFBTVSFZPVSEFWPQTQFSGPSNBODF
DGʰϢχίʔϯاۀͷͻΈͭʱwϓϩμΫςΟϏςΟεΫϫουͷwlʮ͘ਐΊΔΑ͏ʹ͢Δ͜ͱʯɺͭ·Γੜ࢈ੑ্ͷࢿzwٕज़ج൫νʔϜσʔλج൫νʔϜʮ͘ਐΊΔʯΑ͏ʹͳΔ͜ͱʹίϛοτ͢Δ৫Ͱ͋Γɺͦ͏͍͏զʑͷ0,3ͷதʹʢࣄۀ෦ͷօ͞Μͷʣੜ࢈ੑࢦඪؚ͕·Ε͍ͯΔ͖ͩΖ͏
ੜ࢈ੑʹࢿ͍ͨ͠ͷͰͦͷޮՌΛଌఆ͍ͨ͠ɻ
۩ମతʹʁ
ܭଌର
'PVS,FZTͷ۩ମత߲wσϓϩΠͷසwมߋͷϦʔυλΠϜwมߋোwαʔϏε෮ݩ࣌ؒ
46;63*ͰͷରԠwσϓϩΠͷසwมߋͷϦʔυλΠϜwมߋোwαʔϏε෮ݩ࣌ؒૉʹ)FSPLVͷϦϦʔεΛͱΔͱྑͦ͞͏ɻ͋ͱɺ()&4ͷϚʔδͱൺͨΒ໘നͦ͏ͲͷίϛοτΛɺ͕͍͠ͳ͍͋ͬͨΜɺฏۉϚʔδ࣌ؒΛܭଌ͢ΔαʔόΞΫςΟϏςΟϩάͱσϓϩΠ࣌ؒΛ͖߹ΘͤΔͱྑͦ͞͏ʁোɾΠϯγσϯτରԠCPUͰه͕͍ͬͯΔͷͰɺͦΕͰʂ
σʔλιʔε(JU)VC&OUFSQSJTF"1*)FSPLV1MBUGPSN"1*"QQMJDBUJPO"DUJWJUZlTTTCPUz*ODJEFOUMPHσϓϩΠͷස σϓϩΠͷසมߋϦʔυλΠϜมߋো αʔϏε෮ݩ࣌ؒมߋো
ϖύϘͷσʔλج൫ͷ׆༻&YUSBDU-PBE %BUB-BLF.BSU 0VUQVU7JFX#JHGPPU
#JHGPPUࣾσʔλج൫ʮσʔλج൫νʔϜͷઃཱͱۙͷऔΓΈʯIUUQTTQFBLFSEFDLDPNUPTIUIFFTUBCMJTINFOUPGQFQBCPEBUBQMBUGPSNUFBNɹ
ϏϡʔɾՄࢹԽwࣾͰΘΕΔ#*πʔϧͷબࢶw3F%BTI .FUBCBTF %BUB4UVEJPwࠓճσʔλϙʔλϧʢ%BUB4UVEJPʣͷ༧ఆw#JH2VFSZͱͷ૬ੑɺػೳ͕Ұ௨Γἧ͍ͬͯΔɺ(PPHMF8PSLTQBDFͱͷ࿈ܞʢ४උෆཁͰݟΒΕΔʣͳͲwࠓޙ͜ͷลΓͷબࢶݕ౼ʢ-PPLFSͳͲʁʣ
Ͳ͏ͬͯநग़͢Δʁ
(JU)VC&OUFSQSJTF ()&4ͷ׆ಈw&5-ͷͨΊͷίϚϯυϥΠϯπʔϧΛॻ͍ͨɻwVE[VSBPDUYIUUQTHJUIVCDPNVE[VSBPDUY
PDUYͷಛɾׂΓΓw3VTUɻPDUPDSBC SFRXFTUUPLJPͰඇಉظϩʔυɻߴɻwSVTUMTΛར༻ɺϫϯόΠφϦͰಈ࡞Մೳwʮ$47Λग़ྗʯ͚ͩΛߦ͏w$47͔ΒઌCRίϚϯυͰɺFNCVMLͰɻwରԠ*TTVF 13ؚΉ $PNNFOU 6TFS -BCFM *TTVF&WFOUw࣌ؒൣғɺdલ·Ͱɺͱ͍͏ߜΓࠐΈͷΈରԠ13ϚʔδͷఆͰNFSHFEΠϕϯτ͕ඞཁ
αʔϏεͷεςʔλείʔυw46;63*3BJMTͳͷͰɺ3BDL.JEEMFXBSFΛஔ͍͍ͯΔɻwSBDLCJHGPPUw3BDL.JEEMFXBSFͷϨΠϠʔͰΞΫηεϩάΛ࿙Εͳ͘ૹग़Ͱ͖Δwࣦഊͨ͠ϦΫΤετΛूܭwNJOOF͚ʹ࡞͍͕ͬͯͨ46;63*ʹԣల։Ͱ͖ͯศརSFGIUUQTTQFBLFSEFDLDPNNPOPDISPNFHBOFQFQBCPMPHJOGSBTUSVDUVSFCJHGPPUΞΫηε͝ͱͷϑοΫॲཧΛهड़͢Δ͜ͱ͕Մೳ
)FSPLVͷϦϦʔεϩάw͜Ε؆୯ͳϥΠϒϥϦπʔϧΛॻ͍ͨwVE[VSBIFSPLVSVwطଘͷ3VTU࣮͕ϖʔδωʔγϣϯΛαϙʔτ͍ͯ͠ͳ͍ͯͭ͘ɻwSBOHFOFYUSBOHFϔομʹΫη͕͋Δ
োରԠͳͲͷϩάwTTTCPUwϖύϘʹ͓͚ΔΠϯγσϯτରԠɺ#PU0QTͰඪ४Խ͞Ε͍ͯΔɻ46;63*Ͱͷ֤छରԠجຊ͜ͷCPUΛ͏ɻwTTTCPUͷόοΫσʔλ .Z42-Λ&5-ͯ͠ར༻͢Δ͜ͱʹwৄࡉηΩϡରͷࢿྉʮ$PͰࢧ͑ΔϖύϘͷηΩϡϦςΟରࡦʯIUUQTUFDIQFQBCPDPNQEGQFQBCPUFDIDPOGFSFODFTFDVSJUZUFBNTMJEFQEG
͋ͱՄࢹԽӡ༻͍ͯͧ͘͠ʮͰɺӡ༻ͯ͠ΈͯͲ͏ʁʯ͜Ε͔Βɻ
ूܭ݁ՌFYBNQMF
FHϚʔδσϓϩΠճൺֱw ҆ఆͯ͠σϓϩΠͯ͠Δ͠ɺϚʔδͱσϓϩΠ͕Ε͗ͯ͢ͳ͍ͷͰ͑Β͍
FHσϓϩΠޙ࣌ؒͷΤϥʔw ͬͱ͍͍ՄࢹԽͷํ๏͕͋Δ͔ʁ
ࠓޙ
ܭଌ͢Δ͚ͩ͡ΌμϝͳͷͰwνʔϜͰͷӡ༻ʹࡌͤΔඞཁ͕͋Δwࠓܭଌ͍ͯ͠Δ͕ຊʹύϑΥʔϚϯεࢦඪʹͳΔ͔ɺඍௐ͢Δඞཁ͕͋ΔͩΖ͏ɻͦͷࡍطଘͷ&5-ϊϋੜ͔ͤΔɻwσʔλιʔε૿͢ඞཁ͕͋Δ͔ɻ%BUB%PHͳͲͳͲwଞࣄۀ෦ɾଞαʔϏεʹల։͢Δwಋೖͷํʢ͜ͱɺσϓϩΠͷτϥοΩϯάʣΛඪ४Խ͍ͨ͠
σʔλνʔϜج൫νʔϜͱͯ͠wࠓޙʮ͘ਐΊΔʯͨΊͷΈ࡞ΓΛख͍͍ͨwಛఆͷٕज़υϝΠϯʹಛԽͨ͠ϊϋ͕͋Δʢج൫උɺσʔλαΠΤϯεɺσʔλΦϖϨʔγϣϯʣwෳͷࣄۀ෦τϥΠϒͰల։͕Ͱ͖Δwٕज़తʹυϝΠϯʹಛԽͭͭ͠ɺίϛϡχέʔγϣϯͱͯ͠υϝΠϯϨεͰ͍͖͍ͬͯͨϓɹϩɹμɹΫɹςɹΟɹϏɹςɹΟɹɾɹεɹΫɹϫɹοɹυ
Ұॹʹӡ༻։ൃΛσʔλۦಈ͠·͠ΐ͏