Itusilẹ ti Dendrite 0.1.0, olupin ibaraẹnisọrọ kan pẹlu imuse ti Ilana Matrix

atejade Tusilẹ olupin Matrix Dendrite 0.1.0, eyiti o samisi iyipada idagbasoke si ipele idanwo beta. Dendrite ti wa ni idagbasoke nipasẹ awọn mojuto egbe ti Difelopa ti awọn decentralized awọn ibaraẹnisọrọ Syeed Matrix ati ki o ti wa ni ipo bi awọn imuse ti awọn keji iran ti Matrix olupin irinše. Ko dabi olupin itọkasi Synapse, ti a kọ sinu Python, koodu Dendrite ndagba ni Go ede. Awọn imuse osise mejeeji ni iwe-aṣẹ labẹ iwe-aṣẹ Apache 2.0. Ni ise agbese ká aala Ruma Ẹya ti olupin Matrix ni ede Rust ti wa ni idagbasoke lọtọ, eyiti pin nipasẹ labẹ iwe-aṣẹ MIT.

Olupin tuntun naa ni ifọkansi lati ṣaṣeyọri ṣiṣe giga, igbẹkẹle ati iwọn. Dendrite ju Synapse lọ, nilo iranti kere si pataki lati ṣiṣẹ, ati pe o le ṣe iwọn nipasẹ iwọntunwọnsi fifuye kọja awọn apa ọpọ. Dendrite faaji ṣe atilẹyin igbelowọn petele ati pe o da lori ipinya ti awọn olutọju ni irisi microservices, nibiti apẹẹrẹ microservice kọọkan ni awọn tabili tirẹ ninu data data. Oniwontunwonsi fifuye n ran awọn ipe si awọn iṣẹ microservices. Lati ṣe afiwe awọn iṣẹ ṣiṣe ninu koodu naa, awọn okun (awọn iṣẹ ṣiṣe lọ) ni a lo, eyiti o gba ọ laaye lati lo awọn orisun ti gbogbo awọn ohun kohun Sipiyu laisi pin wọn si awọn ilana lọtọ.

Itusilẹ ti Dendrite 0.1.0, olupin ibaraẹnisọrọ kan pẹlu imuse ti Ilana Matrix

Dendrite ṣe atilẹyin awọn ipo meji: monolithic ati polylith. Ni ipo monolithic, gbogbo awọn iṣẹ microservices ti wa ni akopọ ninu faili ṣiṣe kan ṣoṣo, ti a ṣe ni ilana kan, ati ibaraenisọrọ taara pẹlu ara wọn. Ni ipo eroja pupọ (iṣupọ), awọn iṣẹ microservices le ṣe ifilọlẹ lọtọ, pẹlu pinpin kaakiri awọn apa oriṣiriṣi. Ibaraenisepo ti irinše ni
Ipo eroja pupọ ni a ṣe ni lilo HTTP API ati pẹpẹ ti inu Afun Kafka.

Idagbasoke ni a ṣe da lori awọn pato ilana Ilana Matrix ati lilo awọn yara idanwo meji - awọn idanwo ti o wọpọ si Synapse systest ati ki o kan titun ṣeto Ṣepọ. Ni ipele ti idagbasoke lọwọlọwọ, Dendrite kọja 56% ti awọn idanwo Onibara-Server API ati 77% ti awọn idanwo API Federation, lakoko ti o jẹ iṣiro iṣẹ ṣiṣe gangan ni 70% fun API Onibara-Server ati 95% fun Federation API.

Ipele idanwo beta tọkasi pe Dendrite ti ṣetan fun imuse akọkọ ati iyipada si idagbasoke pẹlu awọn idasilẹ tuntun ti a ṣẹda lorekore. Laarin awọn idasilẹ, ero ibi ipamọ data ninu aaye data yoo ni imudojuiwọn bayi (ko fifi awọn ege fifi sori ibi ipamọ, awọn akoonu inu data kii yoo padanu lẹhin imudojuiwọn naa). Awọn iyipada ti o bajẹ ibamu sẹhin, yi eto data data pada, tabi nilo awọn iyipada iṣeto ni yoo funni ni awọn idasilẹ pataki nikan. A ṣe iṣeduro Dendrite lọwọlọwọ lati lo ni ipo monolithic ni apapo pẹlu PostgreSQL DBMS lati ṣẹda awọn olupin ile kekere ati awọn apa P2P. Lilo SQLite ko tii ṣeduro iṣeduro nitori awọn ọran ti ko yanju pẹlu mimu awọn iṣẹ ṣiṣe nigbakan mu.

Awọn ẹya ti ko tii ṣe imuse ni Dendrite pẹlu awọn ijẹrisi gbigba ifiranṣẹ, awọn ami kika, awọn iwifunni titari, OpenID, abuda imeeli, wiwa ẹgbẹ olupin, itọsọna olumulo, awọn atokọ foju olumulo, ṣiṣẹda awọn ẹgbẹ ati agbegbe, ṣiṣe iṣiro wiwa lori ayelujara olumulo, awọn igbewọle alejo, ibaraenisepo pẹlu awọn nẹtiwọki ẹni-kẹta.

Wa fun lilo jẹ iṣẹ ṣiṣe ipilẹ fun awọn yara iwiregbe (ẹda, awọn ifiwepe, awọn ofin ijẹrisi), awọn ọna asopọ ti awọn olukopa ninu awọn yara, mimuuṣiṣẹpọ awọn iṣẹlẹ lẹhin ipadabọ lati offline, awọn akọọlẹ, awọn profaili, itọkasi titẹ, igbasilẹ ati ikojọpọ awọn faili (Media API), ṣiṣatunkọ awọn ifiranṣẹ, ACLs, tag abuda ati ṣiṣẹ pẹlu awọn akojọ ti awọn ẹrọ ati awọn bọtini fun ìsekóòdù opin-si-opin.

Jẹ ki a ranti pe pẹpẹ fun siseto awọn ibaraẹnisọrọ ti a ti sọ di mimọ Matrix nlo HTTPS + JSON gẹgẹbi gbigbe pẹlu agbara lati lo WebSockets tabi ilana ti o da lori COAP+Noise. Awọn eto ti wa ni akoso bi awujo kan ti apèsè ti o le se nlo pẹlu kọọkan miiran ati ki o ti wa ni ìṣọkan sinu kan wọpọ decentralized nẹtiwọki. Awọn ifiranṣẹ ti wa ni atunkọ kọja gbogbo awọn olupin ti o ti sopọ awọn alabaṣepọ ti fifiranṣẹ. Awọn ifiranṣẹ ti wa ni ikede kọja awọn olupin ni ọna kanna ti awọn iṣẹ ṣiṣe jẹ ikede laarin awọn ibi ipamọ Git. Ni iṣẹlẹ ti ijakadi olupin igba diẹ, awọn ifiranṣẹ ko padanu, ṣugbọn a gbejade si awọn olumulo lẹhin ti olupin naa tun bẹrẹ iṣẹ. Awọn aṣayan ID olumulo lọpọlọpọ ni atilẹyin, pẹlu imeeli, nọmba foonu, akọọlẹ Facebook, ati bẹbẹ lọ.

Ko si aaye ikuna kan tabi iṣakoso ifiranṣẹ kọja nẹtiwọọki naa. Gbogbo awọn olupin ti a bo nipasẹ ijiroro jẹ dogba si ara wọn.
Olumulo eyikeyi le ṣiṣe olupin tirẹ ki o so pọ si nẹtiwọọki ti o wọpọ. O ṣee ṣe lati ṣẹda awọn ẹnu-ọna fun ibaraenisepo ti Matrix pẹlu awọn ọna ṣiṣe ti o da lori awọn ilana miiran, fun apẹẹrẹ, pese sile awọn iṣẹ fun fifiranṣẹ awọn ọna meji si IRC, Facebook, Telegram, Skype, Hangouts, Imeeli, WhatsApp ati Slack. Ni afikun si fifiranṣẹ ọrọ lẹsẹkẹsẹ ati awọn ibaraẹnisọrọ, eto le ṣee lo lati gbe awọn faili, firanṣẹ awọn iwifunni,
siseto teleconferences, ṣiṣe ohun ati awọn ipe fidio. O tun ṣe atilẹyin iru awọn ẹya to ti ni ilọsiwaju gẹgẹbi ifitonileti ti titẹ, igbelewọn ti wiwa lori ayelujara olumulo, ijẹrisi kika, awọn iwifunni titari, wiwa ẹgbẹ olupin, amuṣiṣẹpọ ti itan ati ipo alabara.

orisun: opennet.ru

Fi ọrọìwòye kun