Rilis Dendrite 0.1.0, server komunikasi kanthi implementasi protokol Matrix

diterbitake Rilis server matriks Dendrit 0.1.0, sing nandhani transisi pembangunan menyang tahap testing beta. Dendrite lagi dikembangake dening tim inti pangembang saka platform komunikasi desentralisasi Matrix lan dipanggonke minangka implementasine komponen server Matrix generasi kapindho. Beda karo server referensi Synapse, ditulis ing Python, kode Dendrite berkembang ing basa Go. Loro-lorone implementasi resmi dilisensi ing lisensi Apache 2.0. Ing wates proyek Ruma Versi server Matrix ing basa Rust dikembangake kanthi kapisah, sing disebarake dening miturut lisensi MIT.

Server anyar dituju kanggo entuk efisiensi, linuwih lan skalabilitas sing dhuwur. Dendrite ngluwihi Synapse, mbutuhake memori sing luwih sithik kanggo operate, lan bisa nggedhekake keseimbangan beban ing macem-macem kelenjar. Arsitèktur Dendrite ndhukung skala horisontal lan adhedhasar pamisahan panangan ing wangun layanan mikro, ing ngendi saben conto layanan mikro duwe tabel dhewe ing basis data. Load balancer ngirim telpon menyang layanan mikro. Kanggo paralel operasi ing kode, Utas (go rutin) digunakake, sing ngijini sampeyan kanggo nggunakake sumber daya kabeh inti CPU tanpa dibagi menyang proses kapisah.

Rilis Dendrite 0.1.0, server komunikasi kanthi implementasi protokol Matrix

Dendrite ndhukung rong mode: monolitik lan polylith. Ing mode monolitik, kabeh microservices dikemas ing file eksekusi siji, dieksekusi ing proses siji, lan interaksi langsung karo saben liyane. Ing mode multi-komponen (cluster), layanan mikro bisa diluncurake kanthi kapisah, kalebu disebarake ing macem-macem node. Interaksi komponen ing
mode multi-komponen digawa metu nggunakake API lan platform HTTP internal Apache Kafka.

Pangembangan ditindakake adhedhasar spesifikasi protokol Matrix lan nggunakake rong suite tes - tes sing umum kanggo Synapse sytest lan pesawat anyar Ngompliti. Ing tahap pangembangan saiki, Dendrite ngliwati 56% tes API Klien-Server lan 77% tes API Federasi, dene jangkoan fungsi nyata kira-kira 70% kanggo API Klien-Server lan 95% kanggo API Federasi.

Tahap tes beta nuduhake yen Dendrite wis siyap kanggo implementasine awal lan transisi menyang pembangunan kanthi rilis anyar sing dibentuk kanthi periodik. Antarane rilis, skema panyimpenan data ing basis data saiki bakal dianyari (ora kaya nginstal irisan saka repositori, isi database ora bakal ilang sawise nganyari). Owah-owahan sing ngilangi kompatibilitas mundur, ngganti struktur database, utawa mbutuhake owah-owahan konfigurasi mung bakal ditawakake ing rilis utama. Dendrite saiki dianjurake kanggo digunakake ing mode monolitik magepokan karo PostgreSQL DBMS kanggo nggawe homeserver cilik lan simpul P2P. Panggunaan SQLite durung dianjurake amarga masalah sing ora bisa ditanggulangi nalika nangani operasi bebarengan.

Fitur sing durung dileksanakake ing Dendrite kalebu konfirmasi panrimo pesen, tandha maca, kabar push, OpenID, ikatan email, telusuran sisih server, direktori pangguna, dhaptar pangguna sing ora digatekake, nggawe grup lan komunitas, ngevaluasi kehadiran online pangguna, input tamu, interaksi karo jaringan pihak katelu.

Kasedhiya kanggo nggunakake minangka fungsi dhasar kanggo kamar chatting (nggawe, undhangan, aturan otentikasi), sarana federasi peserta ing kamar, sinkronisasi acara sawise bali saka offline, akun, profil, indikasi nelpon, ngundhuh lan ngunggah file (Media API), pesen editing, ACLs, tag naleni lan nggarap dhaptar piranti lan tombol kanggo enkripsi end-to-end.

Ayo elinga yen platform kanggo ngatur komunikasi terdesentralisasi Matrix nggunakake HTTPS+JSON minangka transportasi kanthi kemampuan nggunakake WebSockets utawa protokol adhedhasar TUTUP+Noise. Sistem kasebut dibentuk minangka komunitas server sing bisa sesambungan karo siji liyane lan digabung dadi jaringan desentralisasi umum. Pesen ditiru ing kabeh server sing disambungake karo peserta olahpesen. Pesen disebarake ing server kanthi cara sing padha karo komit disebarake ing antarane repositori Git. Yen ana gangguan server sementara, pesen ora ilang, nanging dikirim menyang pangguna sawise server nerusake operasi. Macem-macem opsi ID pangguna didhukung, kalebu email, nomer telpon, akun Facebook, lsp.

Ora ana titik kegagalan utawa kontrol pesen ing jaringan. Kabeh server sing dilindhungi dening diskusi padha karo saben liyane.
Sembarang pangguna bisa mbukak server dhewe lan nyambung menyang jaringan umum. Iku bisa kanggo nggawe gapura kanggo interaksi Matrix karo sistem adhedhasar protokol liyane, contone, disiapake layanan kanggo ngirim pesen loro-lorone menyang IRC, Facebook, Telegram, Skype, Hangouts, Email, WhatsApp lan Slack. Saliyane olahpesen teks cepet lan obrolan, sistem bisa digunakake kanggo nransfer file, ngirim kabar,
ngatur telekonferensi, nggawe telpon swara lan video. Uga ndhukung fitur canggih kayata kabar ngetik, evaluasi pangguna online, konfirmasi maca, kabar push, telusuran sisih server, sinkronisasi riwayat lan status klien.

Source: opennet.ru

Add a comment