Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
P2P Netfwork with Node.js
Search
Hayato Koriyama
May 30, 2018
Programming
900
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
P2P Netfwork with Node.js
P2P NetworkをNode.jsで入門してみた話
Hayato Koriyama
May 30, 2018
Transcript
40 slides
11/FUXPSLJOHXJUI /PEFKT ೖͯ͠Έͨ
୭ w !OFLPCBUP w 'SPOUFOE&OHJOFFS w גࣜձࣾϞόΠϧϑΝΫτϦʔ
ࠓͷ w ͳΜ͔࠷৽ͷྲྀߦΛ͓͏ͱࢥ͚ͬͨͲΊͨ w /PEFKTͰ11ωοτϫʔΫೖͨ͠ w /PEFKTͰ11ωοτϫʔΫΛߏங͢Δ·Ͱͷ
ࠓ͠ͳ͍ w 8FC35$ͷ w ϓϩτίϧͷӅṭ w 伴ަʹΑΔσʔλͷӅಗͱ͔
-JTL w -JTLCMPDLDIBJOBQQMJDBUJPOQMBUGPSN w IUUQTMJTLJP w /PEFKTͰ࣮͞ΕͨϒϩοΫνΣʔϯΞ ϓϦέʔγϣϯ w
࠷ۙίʔυΛಡΜͩˍࢀߟʹ͠ͳ͕Βࣗ Ͱॻ͍ͨͷͰωοτϫʔΫ෦ͷݟ
None
8FC35$Ͱͳ͍ͷ͔ w 8FC35$TUVO UVSOαʔόʔΛ༻ҙ͢Δ߹ͰӡӦ͕τϥϑΟο ΫΛࢧ͑Δඞཁ͕͋Δ w ʢ1FFSʹͦͷׂΛ࣋ͨͤΔͱ͍͏ํ๏͋Γ·͢ʣ w TUVO*1ΞυϨεͷऔಘ w
UVSOσʔλͷதܧ w EFDFOUSBMJ[FEͱݴ͑ͳ͍
EFDFOUSBMJ[FEͳ11 w μϯ͠ͳ͍ωοτϫʔΫͷඞཁੑͬͯ w ӡӦ͕ؤுΕྑ͍ͷͰ w ຊʹμϯ͍͚ͯ͠ͳ͍αʔϏεͳΜͰ͔͢ʁ
EFDFOUSBMJ[FEͳ11 w ˠެݖྗʹӡӦαʔόʔΛ͑ΒΕͯಈ͖ଓ͚Δ w ˠެݖྗʹରͯ͠ϩοΫϯϩʔϧ͍ͯͧ͘͠ɺͱ͍͏ҙࢤΛ΅͔ ͨ͠ͷ
3PDLO3PMM11
11ߏங·Ͱͷ̎ͭͷน
/BUͷน w /BU5SBWFSTBM w ͍ΘΏΔ/BUӽ͑ɺϙʔτ։์ɺ1PSU.BQQJOHT w )PMF1VODIJOHͱݴ͏Β͍͠ w ·ͣ5$1ϙʔτ͕ۭ͍ͯͳ͍ w
ˠ૬ख͔Βࣗͷ4PDLFUʹܨ͙͜ͱ͕ग़དྷͳ͍ w ϧʔλ͕V1O1ʹରԠ͍ͯ͠Εϧʔλʹ1PSU.BQQJOH͢Δ͜ͱ͕Մೳ
/BUͷน w ੲͷ11ιϑτϢʔβʔ͕खಈͰ։์ͷઃఆ 1PSU.BQQJOH Λ ͢Δඞཁ͕͋ͬͨ w ࠷ۙͷՈఉ༻ϧʔλେͷ߹V1O1ʹରԠ͍ͯ͠ΔͷͰɺࣗ ಈͰϙʔτ։์͢Δྀ͕Մೳ w
اۀωοτϫʔΫ͔Βϙʔτ։͚ͯΒ͍ͬͯͩ͘͞
1PSU.BQQJOHͷखॱ w ωοτϫʔΫͷϧʔλΞυϨεͱϚοϐϯάઃఆͷΤϯυϙ ΠϯτΛ୳͢ TTEQ w ϧʔλʹάϩʔόϧ*1ΞυϨεΛ͍߹ΘͤΔ TPBQ
w ϧʔλʹϙʔτϚοϐϯάͷཁٻΛૹΔ TPBQ w Ұ࣌తʹϙʔτ͕։͘ʂ w ͋ͱͰดΊ·͠ΐ͏ TPBQ
ϧʔλΛ୳͢
ϧʔλʹ(MPCBM*1Λฉ͘
ϧʔλʹ(MPCBM*1Λฉ͘
1PSU.BQQJOH
w 44%1ͬͯԿ w ωοτϫʔΫͰV1O1ʹରԠͨ͠ػثΛ୳ࡧ͢ΔͨΊͷϓϩτί ϧ w 40"1ͬͯԿ w 3&45͕ྲྀߦΔલʹଘࡏͨ͠9.-ϕʔεͷ31$ϓϩτίϧ w
ݹ͍ʂ w ͰV1O1ରԠϧʔλʹ͜Ε͕ೖͬͯΔ
w ͜ͷखଓ͖Λ౿Ή͜ͱͰϧʔλͷཧը໘ͷݖݶ͕ແͯ͘ϙʔ τ։์͕Մೳ w OPEFOBUVQOQͱ͔ͰͰ͖Δ͔ w ະݕূʢશ෦ॻ͍ͯ͠·ͬͨͷͰʣ
11ߏங·Ͱͷ̎ͭͷน
ॳظಉظͷน w ֎෦ͷਓͱΓͱΓͰ͖ΔΑ͏ʹͳͬͨͷͰ୭͔ͱܨ͕Γ͍ͨ w 1FFS-JTU͕ͳ͍
ॳظಉظͷน w ωοτϫʔΫʹࢀՃ͢ΔͨΊͷใ w ॳظϊʔυ w ωοτϫʔΫ্ʹԿ͕͋Δͷ͔ w ϑΝΠϧ#MPDLใ
ॳظಉظͷน w ॳظϊʔυΛͲ͏ͬͯಘΔͷ͔ w 8JOOZ4IBSF༗ࢤϙʔλϧαΠτͳͲͰͷࠜڞ༗ w &UIFSFVNͳͲϒϩοΫνΣʔϯܥ։ൃݩ͕༻ҙͨ͠ઈରܨ͕Δϊʔυ͕ଘࡏ ͢Δ͜ͱ͕ଟ͍ w 3PDLO3PMMͳ߹Ͳ͔͔͜ΒॳظϊʔυΛೖΕΔඞཁ͋Γ
w ։ൃݩϊʔυ͕શͯΛ༩͑Δͷෛ୲͕ภΔͷͰɺ։ൃݩϊʔυ͔Βऔಘ͢Δͷ ϊʔυใͷΈɺଞͷσʔλωοτϫʔΫ্ͷ(PPE1FFS͔ΒΒ͏ͳͲͷ ͕ඞཁ
(PPE1FFS#BE1FFS w 1FFS͕ಛఆͷ୭͔ʹσʔλΛ͍߹Θ͍ͤͨ߹ɺରͷ1FFSΛબఆ͢Δͷʹ(PPE1FFS͔Ͳ͏͔அ͢Δ ࢦඪ w ͍߹Θͤઌ͕গͳ͍ใ͔͍࣋ͬͯ͠ͳ͔ͬͨΒແବωοτϫʔΫΛ݈શʹอͯͳ͍ w શવܨ͕Βͳ͍1FFSใΛ͞Εͯɺॱ൪ʹ֬ೝ͢Δ͜ͱ͔͠Ͱ͖ͳ͍ w ࢦඪ
w σʔλΛΑΓଟ͍࣋ͬͯ͘Δ w σʔλ͕࠷৽Ͱ͋Δ w WFSTJPO͕࠷৽Ͱ͋Δ w IBOETIBLFઐ༻ͷνϟϯωϧͰΓͱΓ͢Δ
(PPE1FFS#BE1FFS w 8JOOZ w ωοτϫʔΫͷʢࣗݾਃࠂʣ w Λ্ྲྀͱԼྲྀʹ͚Δ͜ͱͰɺωοτϫʔΫͷετϨεΛݮ Βͦ͏ͱͨ͠ w ্ྲྀϊʔυʹσʔλ͕ू·ΔΈྲྀ͕͍
(PPE1FFS#BE1FFS w 1FSGFDU%BSL w ॴ༗͢ΔετϨʔδͷྔ w ετϨʔδ͕ଟ͍ωοτϫʔΫʹߩݙ͍ͯ͠Δ
(PPE1FFS#BE1FFS w &UIFSFVN HFUI w IFJHIUʢ͍࣋ͬͯΔϒϩοΫʣͷ w IFJHIU͕ߴ͍࠷৽Ͱ͋ΔՄೳੑ͕ߴ͍
(PPE1FFS#BE1FFS w #JU$PJO w $ ಡΉͷ͕͠ΜͲ͔ͬͨ
(PPE1FFS#BE1FFS w -JTL w ݱࡏίωΫγϣϯϦετͷઌ಄Λ͖࣋ͬͯͯΔ͚ͩ
(PPE1FFS#BE1FFS
ࣗͰͲ͏͔ͨ͠ w GPS&BDIͨ͠ w ૬खͷෛՙΛΨϯແࢹ
͜͜·ͰདྷͯΑ͏͘ 11ωοτϫʔΫ͕ߏங͞ΕΔ
͜ͷޙͷωοτϫʔΫʹ͏ ϓϩτίϧ w WT w )551 -JTL /&0 w
KTPO31$ &UIFSFVN w H31$ &UIFSFVN w ϦϨʔ w 8FC4PDLFU -JTL /&0 &UIFSFVN w ;FSP.2
͍ͭͰɿωοτϫʔΫͷҡ࣋ํ๏
None
None
ײ w 11ωοτϫʔΫͷ͜ͱΛௐΔʹͭΕͯ8JOOZ4IBSFͬͯΑ͘ ग़དྷͯΔͳ͊ͱ͍͏ײ w ͚Ͳྺ࢙తܦҢʹΑ໊ͬͯલΛग़͠ʹ͍͘ w දʹग़͠ʹ͍͘ʂʂʂ w શݖΛᨳ͏ϒϩοΫνΣʔϯ11ωοτϫʔΫͱෆՄ
w දʹग़͍͢͠ʂʂʂ
ײ w #JU$PJO͔Β࢝·ΔϒϩοΫνΣʔϯ܈ʹΑͬͯ11ωοτϫʔΫͷ धཁ͕ߴ·͖ͬͯͨ w ωοτʹམͪͯΔຊޠใ͕ݹ͍ w ͍͍ͩͨࣗͰॻ͔ͳ͖Ό͍͚ͳ͍ਏ͕͋͞Δ w φͳٕज़ք۾ͷਓɺ11ωοτϫʔΫॻ͍ͯ΄͍͠
MJCQQͱ͍͏ͷ͕͋ΔΒ͍͠ 11ʹඞཁͳॾʑΛ৭ʑͳݴޠͰ࣮ͨ͠Ϟδϡʔϧ܈ ͕ɺ/PEFKTϞδϡʔϧ͋·Γἧͬͯͳ͍
More Decks by Hayato Koriyama
See All by Hayato Koriyama
Migration to BrowserWindow in Electron
nekobato
3
980
Building frontend development environment and web performance monitoring
nekobato
2
1.6k
Mobile Animation Tuning
nekobato
1
810
Electron年報
nekobato
0
920
Other Decks in Programming
See All in Programming
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.7k
SFCで実現する病院・医療システムの動的組み立て式UI
koukimiura
1
180
Crash Auto Pipelines
veronikapj
1
410
AIが実装を担う時代の「技術設計」と「チームマネジメント」
kamina_zzz
2
260
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
1.2k
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
310
なぜ私たちは「現時点では」KMPの導入を見送ったのか
chigichan24
0
160
AWS CDKを理解するために公式の定義を深掘って解説してみる / Understanding AWS CDK by Digging into Its Official Definition
akihisaikeda
3
300
Web3Dライブラリを作ってVue Custom Rendererの仕組みを理解しよう / lets learn vue custom renderer by making 3d library
drumath2237
1
130
小さなアプリを作って公開するまで
onozaty
0
170
LLM 101: Exploring LLMs, Starting with Tokens.
dalinaum
0
110
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
3
1.7k
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.4k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
790
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
60k
Tell your own story through comics
letsgokoyo
1
1.1k
The Curse of the Amulet
leimatthew05
4
17k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
620
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Being A Developer After 40
akosma
PRO
92
590k
30 Presentation Tips
portentint
PRO
1
470
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.3k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
460
エンジニアに許された特別な時間の終わり
watany
109
250k