Matrix ํŽ˜๋”๋ ˆ์ด์…˜ ๋„คํŠธ์›Œํฌ์šฉ PXNUMXP ํด๋ผ์ด์–ธํŠธ์˜ ์ฒซ ๋ฒˆ์งธ ๋ฆด๋ฆฌ์Šค

์‹คํ—˜์ ์ธ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค ํญ๋™ P2P.


ํญ๋™ - ์›๋ž˜๋Š” ํŽ˜๋”๋ ˆ์ด์…˜ ๋„คํŠธ์›Œํฌ์˜ ํด๋ผ์ด์–ธํŠธ์˜€์Šต๋‹ˆ๋‹ค. ๋งคํŠธ๋ฆญ์Šค. P2P ์ˆ˜์ •์€ ํ†ตํ•ฉ์„ ํ†ตํ•ด ์ค‘์•™ํ™”๋œ DNS๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ํด๋ผ์ด์–ธํŠธ์— ์„œ๋ฒ„ ๊ตฌํ˜„ ๋ฐ ์—ฐํ•ฉ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. libp2p, ์ด๋Š” ๋‹ค์Œ์—์„œ๋„ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. IPFS. ์ด๋Š” ํŽ˜์ด์ง€๋ฅผ ๋‹ค์‹œ ๋กœ๋“œํ•œ ํ›„ ์„ธ์…˜์„ ์ €์žฅํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ ํด๋ผ์ด์–ธํŠธ ๋ฒ„์ „์ด์ง€๋งŒ ๋‹ค์Œ ์ฃผ์š” ์—…๋ฐ์ดํŠธ(์˜ˆ: 0.2.0)์—์„œ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๊ณ„์† ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ค‘์š”ํ•œ ์ž‘์—…์— ํด๋ผ์ด์–ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๊ถŒ์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ๋Š” ํŽ˜๋”๋ ˆ์ด์…˜, ๋ฃธ ์ƒ์„ฑ ๋ฐ ๋ฃธ์˜ ๊ธ€๋กœ๋ฒŒ(์„œ๋ฒ„๋ฆฌ์Šค!) ์นดํƒˆ๋กœ๊ทธ ํ‘œ์‹œ๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ DNS๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ๋ณธ Matrix ๋„คํŠธ์›Œํฌ์™€ libp2p์˜ Matrix ๋„คํŠธ์›Œํฌ๋Š” ์•„์ง ์„œ๋กœ ์—ฐํ•ฉํ•˜๊ณ  ์ƒํ˜ธ ์ž‘์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋„คํŠธ์›Œํฌ์—์„œ ์ƒ์„ฑ๋œ ID๋ฅผ ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ๋‚ด๋ณด๋‚ด๊ธฐ๋Š” ์•„์ง ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ด๋Š” ๊ฐ€๋Šฅํ•œ ๊ฐœ๋…์„ ๋ถˆ์•ˆ์ •ํ•˜๊ฒŒ ํ‘œํ˜„ํ•˜๋ฏ€๋กœ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์„œ๋น„์Šค ์›Œ์ปค๋กœ ์‹คํ–‰ ์ค‘์ธ ์„œ๋ฒ„๊ฐ€ ์‹œ๊ฐ„ ์ดˆ๊ณผ๋กœ ์ธํ•ด ๋ธŒ๋ผ์šฐ์ €์— ์˜ํ•ด ์ข…๋ฃŒ๋˜๋ฉด ๊ณ„์ •์— ๋กœ๊ทธ์ธํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ํด๋ผ์ด์–ธํŠธ์™€ ์ƒํ˜ธ ์ž‘์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋ฌธ์ œ ํŒŒ์ด์–ดํญ์Šค์—์„œ ๋ฐœ๊ฒฌ๋จ, 30์ดˆ ๋™์•ˆ ํ™œ๋™์ด ์—†์œผ๋ฉด ์ด ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค].
  • libp2p ๋„คํŠธ์›Œํฌ ์ˆ˜์ค€์—์„œ๋Š” ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘์—… ์ˆ˜์— ์‹œ๊ฐ„ ์ œํ•œ์ด ์žˆ์œผ๋ฉฐ, ์ด๋กœ ์ธํ•ด ํŽ˜๋”๋ ˆ์ด์…˜์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

P2P ๋ฒ„์ „์˜ Matrix ์ž‘์—…์ด ์‹œ์ž‘๋œ ๊ฒƒ์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋” ๋งŽ์€ ์ž์œ ๋ฅผ ์ œ๊ณตํ•˜๋ ค๋Š” ๊ฐœ๋ฐœ์ž์˜ ์—ด๋ง ๋•Œ๋ฌธ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์ค‘์•™ ์„œ๋ฒ„์™€์˜ ๋ถ„๋ฆฌ๋ฅผ ํ†ตํ•ด ๋กœ์ปฌ ๋ฐ ๋ฉ”์‹œ ๋„คํŠธ์›Œํฌ ๋‚ด์—์„œ, ๊ทธ๋ฆฌ๊ณ  ์ผ๋ฐ˜์ ์œผ๋กœ ์™ธ๋ถ€ ๋„คํŠธ์›Œํฌ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๊ฐ€ ์ œํ•œ๋˜๊ฑฐ๋‚˜ ์—†๋Š” ์ƒํ™ฉ์—์„œ ํ†ต์‹ ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋˜ํ•œ ์ „์†ก๋œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์˜ ์ตœ์†Œํ™”๋กœ ์ธํ•ด ๊ฐœ์ธ ์ •๋ณด ๋ณดํ˜ธ์— ๊ธ์ •์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. ์ด ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ๋Š” ํ•ด๋‹น ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๊ฐ€ ์„œ์‹  ์ฐธ๊ฐ€์ž์— ์˜ํ•ด์„œ๋งŒ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๊ถ๊ทน์ ์œผ๋กœ ๋” ๋‚˜์€ ์ด์‹์„ฑ๊ณผ ๋ณด์•ˆ์„ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ํ˜„์žฌ Matrix ๊ฐœ๋…์„ ๋ฆฌํŒฉํ† ๋งํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•˜๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

์„œ๋ฒ„ API ๊ตฌํ˜„์€ ์„œ๋ฒ„ ์ปดํŒŒ์ผ์„ ํ†ตํ•ด ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. ์ˆ˜์ƒ ๋Œ๊ธฐ ์„œ๋น„์Šค ์›Œ์ปค ํ˜•ํƒœ๋กœ ํด๋ผ์ด์–ธํŠธ์™€ ๋™์‹œ์— ์‹คํ–‰๋˜๋Š” WebAssembly ์ฝ”๋“œ๋กœ, ์›น ๋ฒ„์ „๊ณผ Electron ๋ž˜ํผ์˜ ๊ฒฝ์šฐ IndexedDB ๋ฐ SQLite๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ๋กœ์ปฌ์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
Dendrite๋Š” Go์˜ "XNUMX์„ธ๋Œ€" Matrix ์„œ๋ฒ„๋กœ ๊ฐœ๋ฐœ ์ค‘์ด๋ฉฐ ์™„์ „ํ•œ ๋ชจ๋“ˆ์‹์œผ๋กœ ์„ค๊ณ„๋˜์—ˆ์œผ๋ฉฐ ๋ชจ๋†€๋ฆฌ์‹์œผ๋กœ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์‹ ํ˜•ํƒœ์—์„œ๋Š” Apache Kafka๊ฐ€ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ์— ์‚ฌ์šฉ๋˜๋ฉฐ ๋ชจ๋†€๋ฆฌ์‹ ํ˜•ํƒœ์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋‚˜ํ”„์นด. Dendrite์˜ P2P ๋ฒ„์ „ ๊ตฌ์ถ•์— ๋Œ€ํ•œ ๋ฌธ์„œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. GitHub์—์„œ.

Dendrite๋Š” ์›๋ž˜ ์ง์ ‘ ๋Œ€์ฒดํ•  ๋ชฉ์ ์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ ๋ฒ”์šฉ ์„œ๋ฒ„๋กœ ๋งŒ๋“ค์–ด์กŒ์Šต๋‹ˆ๋‹ค. ์‹œ๋ƒ…์Šค, Python์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ ์„ฑ๋Šฅ ๋ฐ ํ™•์žฅ์„ฑ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ Synapse์— ๋Œ€ํ•œ ์ง€์›๊ณผ ๋Œ€๋Œ€์ ์ธ ๋ฆฌํŒฉํ† ๋ง์˜ ํ•„์š”์„ฑ์œผ๋กœ ์ธํ•ด Dendrite ๊ฐœ๋ฐœ์€ ์ค‘๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ถ๊ทน์ ์œผ๋กœ ๊ฐœ๋ฐœ์ด ์žฌ๊ฐœ๋˜์—ˆ์ง€๋งŒ ๊ธฐ์กด ์ฝ”๋“œ ๊ธฐ๋ฐ˜์„ ๋ฒ”์šฉ์ ์ธ ๋งฅ๋ฝ์—์„œ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋ธŒ๋ผ์šฐ์ € ๋ฐ ํœด๋Œ€ํฐ๊ณผ ๊ฐ™์€ ํœด๋Œ€์šฉ ์ €์ „๋ ฅ ํด๋ผ์ด์–ธํŠธ ์žฅ์น˜์— ๋‚ด์žฅํ•˜๊ธฐ ์œ„ํ•œ ์ ์‘์— ์ค‘์ ์„ ๋‘๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ Dendrite ๊ตฌํ˜„์€ ์•„์ง ๊ฐœ๋ฐœ ์ดˆ๊ธฐ ๋‹จ๊ณ„์— ์žˆ์ง€๋งŒ ๊ฐ„๋‹จํ•œ ์—ฐํ•ฉ์—๋Š” ์ด๋ฏธ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ API: 34%(227/672 ํ…Œ์ŠคํŠธ) โ€” 33%์—์„œ ์ฆ๊ฐ€
ํŽ˜๋”๋ ˆ์ด์…˜ API: 34%(35/103 ํ…Œ์ŠคํŠธ) โ€” 27%์—์„œ ์ฆ๊ฐ€

P2P๋ฅผ ๊ตฌํ˜„ํ•˜๋ ค๋Š” ์‹œ๋„๋Š” ์ด๋ฒˆ์ด ์ฒ˜์Œ์ด ์•„๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ์ด๋‹ˆ์…”ํ‹ฐ๋ธŒ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. Synapse์šฉ Yggdrasil ๋„คํŠธ์›Œํฌ์— ๋Œ€ํ•œ CoAP ํ”„๋ก์‹œ.


Matrix ํ”„๋กœํ† ์ฝœ์˜ ๊ฐœ๋ฐœ์ž๋Š” ์—ฐํ•ฉ์—๋งŒ ์ดˆ์ ์„ ๋งž์ถ”์ง€ ์•Š๊ณ  ํ›จ์”ฌ ๋” ํฐ ๋ถ„์‚ฐํ™”๋ฅผ ์œ„ํ•œ ๋„๊ตฌ๋ฅผ ์‹คํ—˜ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์‹คํ—˜์ด ์ˆ˜ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์šด์†ก ์ˆ˜์ค€์—์„œ ๋น„์šฉ์„ ์ ˆ๊ฐํ•˜๊ธฐ ์œ„ํ•ด. ์•…๋งˆ๊ฐ€ ์ง„ํ™”ํ•œ๋‹ค ํŒํƒˆ๋ผ์ด๋ชฌ - ์•”ํ˜ธํ™” ์ง€์›์ด ์—†๋Š” ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์—ฐ๊ฒฐํ•˜์—ฌ ์•”ํ˜ธํ™”๋œ ๋ฉ”์‹œ์ง€์™€ ์ƒํ˜ธ ์ž‘์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋ก์‹œ์ž…๋‹ˆ๋‹ค. ์ˆ˜ํ–‰๋œ ๋ชจ๋“  ์ด๋‹ˆ์…”ํ‹ฐ๋ธŒ๋Š” ๋ฏธ๋ž˜์— ๋‹ค์Œ์„ ๋ณด์žฅํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„์— ๋Œ€ํ•œ ๋กœ๊ทธ์ธ ๋ฐ”์ธ๋”ฉ ์ œ๊ฑฐ, MXID๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ์ด๋ฏธ Riot P2P์— ๋ถ€๋ถ„์ ์œผ๋กœ ๊ตฌํ˜„๋œ ๊ณต๊ฐœ ํ‚ค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋„คํŠธ์›Œํฌ์™€ ์ƒํ˜ธ ์ž‘์šฉํ•ฉ๋‹ˆ๋‹ค.


๊ณ„ํš๋œ ๊ตฌํ˜„์˜ ๊ฐœ๋…์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์ •๋ณด๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. YouTube์˜ FOSDEM 2020 ํ”„๋ ˆ์  ํ…Œ์ด์…˜์—์„œ ะธ ์ตœ๊ทผ ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ.

์ด์ „ ์•ฑ์˜ ์ฝ”๋“œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ Android์šฉ Riot P2P ๋ณ€ํ˜•๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์•ž์œผ๋กœ๋Š” ํ˜„์žฌ ๋ฒ„์ „์œผ๋กœ ์ด์ „ํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค. ํญ๋™X.

๊ทธ ์œ„์—

์ถœ์ฒ˜ : linux.org.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€