Ke kuhi nei ke kikowaena hou i ka hoʻokō ʻana i ka pono kiʻekiʻe, ka hilinaʻi a me ka scalability. ʻOi aku ka maikaʻi o Dendrite i ka Synapse, koi ʻoi aku ka liʻiliʻi o ka hoʻomanaʻo e hana, a hiki ke hoʻonui ʻia ma o ke kaupaona ʻana ma waena o nā node. Kākoʻo ka hale hoʻolālā Dendrite i ka scaling ākea a hoʻokumu ʻia ma ka hoʻokaʻawale ʻana o nā mea lawelawe ma ke ʻano o nā microservices, kahi i loaʻa i kēlā me kēia microservice kona mau papa ponoʻī i ka waihona. Hoʻouna ka load balancer i nā kelepona i nā microservices. No ka hoʻohālikelike ʻana i nā hana ma ke code, hoʻohana ʻia nā threads (go routines), e ʻae iā ʻoe e hoʻohana i nā kumuwaiwai o nā cores CPU āpau me ka ʻole e hoʻokaʻawale iā lākou i nā kaʻina kaʻawale.
Kākoʻo ʻo Dendrite i ʻelua mau ʻano: monolithic a me polylith. Ma ke ʻano monolithic, hoʻopili ʻia nā microservice a pau i hoʻokahi faila hiki ke hoʻokō ʻia, hoʻokō ʻia i hoʻokahi kaʻina hana, a pili pono kekahi i kekahi. Ma ke ʻano multi-component (cluster), hiki ke hoʻokaʻawale ʻia nā microservices, me ka puʻunaue ʻana i nā node like ʻole. Ka pilina o nā mea i loko
Hoʻohana ʻia ka mode multi-component me ka hoʻohana ʻana i ka API HTTP kūloko a me ka paepae
Hana ʻia ka hoʻomohala ʻana ma muli o nā kikoʻī protocol Matrix a me ka hoʻohana ʻana i ʻelua suites hoʻāʻo - nā hoʻokolohua maʻamau i Synapse
Hōʻike ka pae hoʻāʻo beta ua mākaukau ʻo Dendrite no ka hoʻokō mua a me ka hoʻololi ʻana i ka hoʻomohala ʻana me nā hoʻokuʻu hou i hoʻokumu ʻia i kēlā me kēia manawa. Ma waena o nā hoʻokuʻu ʻana, e hoʻonui hou ʻia ka papahana mālama ʻikepili i ka waihona (ʻaʻole e like me ka hoʻokomo ʻana i nā ʻāpana mai ka waihona, ʻaʻole e nalowale nā mea o ka waihona ma hope o ka hoʻohou). E hāʻawi wale ʻia nā hoʻololi e uhaʻi i hope, hoʻololi i ka ʻōnaehana waihona, a i ʻole e koi i nā hoʻololi hoʻonohonoho. Manaʻo ʻia ʻo Dendrite e hoʻohana ʻia i ke ʻano monolithic i hui pū me ka PostgreSQL DBMS e hana i nā homeservers liʻiliʻi a me nā node P2P. ʻAʻole ʻōlelo ʻia ka hoʻohana ʻana iā SQLite ma muli o nā pilikia i hoʻoholo ʻole ʻia me ka lawelawe ʻana i nā hana like.
ʻO nā hiʻohiʻona ʻaʻole i hoʻokō ʻia ma Dendrite e pili ana i ka hōʻoia ʻana i ka loaʻa ʻana o ka memo, heluhelu i nā māka, nā leka hoʻomaopopo, OpenID, ka leka uila, ka huli ʻaoʻao server, ka papa kuhikuhi mea hoʻohana, nā papa inoa hoʻohana ʻole, ka hoʻokumu ʻana i nā hui a me nā kaiāulu, ka loiloi ʻana i ka hele ʻana o ka mea hoʻohana ma ka pūnaewele, nā hoʻokomo malihini, ka launa pū me nā pūnaewele ʻaoʻao ʻekolu.
Loaʻa no ka hoʻohana ʻana i nā hana maʻamau no nā lumi kamaʻilio (hana, kono ʻia, nā lula hōʻoia), ʻo ke ʻano o ka hui ʻana o nā mea komo i loko o nā lumi, ka hoʻonohonoho ʻana o nā hanana ma hope o ka hoʻi ʻana mai waho, nā moʻokāki, nā ʻaoʻao, ke kelepona ʻana, ka hoʻoiho ʻana a me ka hoʻouka ʻana i nā faila (Media API), hoʻoponopono i nā memo, ACL, hoʻopaʻa inoa a hana pū me nā papa inoa o nā mea hana a me nā kī no ka hoʻopili ʻana i ka hopena.
E hoʻomanaʻo kākou ʻo ka paepae no ka hoʻonohonoho ʻana i nā kamaʻilio decentralized ʻo Matrix e hoʻohana iā HTTPS+JSON ma ke ʻano he halihali me ka hiki ke hoʻohana i nā WebSockets a i ʻole kahi protocol e pili ana i
ʻAʻohe wahi o ka hāʻule ʻole a i ʻole ka mana memo ma waena o ka pūnaewele. ʻO nā kikowaena āpau i uhi ʻia e ka kūkākūkā ʻana ua like kekahi me kekahi.
Hiki i kēlā me kēia mea hoʻohana ke holo i kā lākou kikowaena ponoʻī a hoʻohui iā ia i kahi pūnaewele maʻamau. Hiki ke hana
ka hoʻonohonoho ʻana i nā teleconferences, ka leo a me nā kelepona wikiō. Kākoʻo ia i nā hiʻohiʻona kiʻekiʻe e like me ka hoʻolaha ʻana o ka paʻi ʻana, ka loiloi o ka mea hoʻohana ma ka pūnaewele, heluhelu i ka hōʻoia ʻana, nā leka hoʻolaha, ʻimi ʻaoʻao server, ka hoʻonohonoho ʻana o ka mōʻaukala a me ke kūlana o ka mea kūʻai aku.
Source: opennet.ru