{"id":96449,"date":"2020-10-12T01:42:16","date_gmt":"2020-10-11T23:42:16","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-dendrite-0-1-0-kommunikaczionnogo-servera-s-realizacziej-protokola-matrix"},"modified":"2020-10-12T01:42:16","modified_gmt":"2020-10-11T23:42:16","slug":"vypusk-dendrite-0-1-0-kommunikaczionnogo-servera-s-realizacziej-protokola-matrix","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-dendrite-0-1-0-kommunikaczionnogo-servera-s-realizacziej-protokola-matrix","title":{"rendered":"Release Dendrite 0.1.0, a communication server implementing the Matrix protocol.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/matrix.org\/blog\/2020\/10\/08\/dendrite-is-entering-beta\">Published<\/a><\/noindex> release of the Matrix server <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/matrix-org\/dendrite\/releases\/tag\/v0.1.0\">Dendrite 0.1.0<\/a><\/noindex>, marking the transition of development to the beta testing stage. Dendrite is being developed by the core team of the decentralized communication platform Matrix and is positioned as an implementation of the second generation of Matrix server components. Unlike the reference server <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/matrix-org\/synapse\">Synapse<\/a><\/noindex>, written in Python, the Dendrite code <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/matrix-org\/dendrit\">is being developed<\/a><\/noindex> is written in Go. Both official implementations are distributed under the Apache 2.0 license. Within the framework of the project <noindex><a rel=\"nofollow\" href=\"https:\/\/www.ruma.io\/\">Ruma<\/a><\/noindex> a version of the Matrix server is being developed in Rust, which <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ruma\/ruma\">is distributed<\/a><\/noindex> is licensed under the MIT License. <\/p>\n<p>The new server aims to achieve high efficiency, reliability, and scalability. Dendrite outperforms Synapse in performance, requires significantly less memory to operate, and can be scaled through load balancing across multiple nodes. The architecture of Dendrite supports horizontal scaling and is based on the separation of handlers in the form of microservices, where each instance of a microservice has its own tables in the database. Load balancing manages the requests to the microservices. To parallelize operations in the code, threads (go routines) are used, allowing the utilization of all CPU cores without splitting into separate processes. <\/p>\n<p><center><noindex><a rel=\"nofollow\" href=\"https:\/\/matrix.org\/blog\/img\/2020-10-08-dendrite-arch.svg\"><img decoding=\"async\" alt=\"Release Dendrite 0.1.0, a communication server implementing the Matrix protocol. \" src=\"\/wp-content\/uploads\/2020\/10\/b6ad73a7ee869063c0214298a8dabfc7.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/center><\/p>\n<p>Dendrite operates in two modes \u2014 monolithic and multi-component (polylith). In monolithic mode, all microservices are compiled into a single executable file, run within one process, and interact directly with one another. In multi-component (cluster) mode, microservices can be launched separately, which may include distribution across different nodes. The interaction of the components in<br \/>\nmulti-component mode is carried out using an internal HTTP API and the platform <noindex><a rel=\"nofollow\" href=\"https:\/\/kafka.apache.org\/\">Apache Kafka<\/a><\/noindex>.<\/p>\n<p>Development is based on the specifications of the Matrix protocol and utilizes two test suites \u2014 general tests shared with Synapse. <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/matrix-org\/sytest\">sytest<\/a><\/noindex>  and a new suite <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/matrix-org\/complement\">Complement<\/a><\/noindex>. At the current stage of development, Dendrite successfully passes 56% of the Client-Server API tests and 77% of the Federation API tests, with the actual functional coverage estimated at 70% for the Client-Server API and 95% for the Federation API.<\/p>\n<p>The beta testing phase indicates that Dendrite is ready for initial deployment and has transitioned to development with periodic releases. Between releases, database schema updates will now be provided (unlike installing snapshots from the repository, where the database content would be lost after the update). Changes that break backward compatibility, alter the database structure, or require configuration modifications will only be proposed in significant releases. Dendrite is currently recommended for use in monolithic mode with the PostgreSQL DBMS to create small homeservers and P2P nodes. Using SQLite is not recommended due to unresolved issues with handling concurrent operations.<\/p>\n<p>Among the features not yet implemented in Dendrite are message receipt confirmations, read receipts, push notifications, OpenID, email binding, server-side search, user directory, user ignore lists, group and community creation, user presence assessment online, guest logins, and interaction with external networks.<\/p>\n<p>Basic functionality for chat rooms is available for use (creation, invites, authentication rules), federation tools for participants in rooms, event synchronization after returning from offline, accounts, profiles, typing indicators, file uploads and downloads (Media API), message editing, ACL, tag binding, and management of device lists and keys for end-to-end encryption. <\/p>\n<p>Let us remind you that the Matrix platform for organizing decentralized communications uses HTTPS+JSON as transport with the option to use WebSockets or a protocol based on <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc7252\">CoAP<\/a><\/noindex>+<noindex><a rel=\"nofollow\" href=\"https:\/\/noiseprotocol.org\/\">Noise<\/a><\/noindex>The system is formed as a consortium of servers that can interact with each other and are united into a single decentralized network. Messages are replicated across all servers to which messaging participants are connected. Messages spread across servers similarly to how commits are distributed between Git repositories. In the case of a temporary server outage, messages are not lost, but instead are delivered to users after the server resumes operation. Various user ID options are supported, including email, phone number, Facebook account, etc. <\/p>\n<p>The network does not have a single point of failure or control over messages. All servers involved in the discussion are equal to each other.<br \/>\nAny user can launch their own server and connect it to the overall network. It is possible to create <noindex><a rel=\"nofollow\" href=\"https:\/\/matrix.org\/docs\/projects\/bridges\/\">gateways<\/a><\/noindex> for integrating Matrix with systems based on other protocols, such as <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/matrix-org?utf8=%E2%9C%93&#038;q=matrix-appservice&#038;type=&#038;language=\">are prepared<\/a><\/noindex> services for two-way messaging in IRC, Facebook, Telegram, Skype, Hangouts, Email, WhatsApp, and Slack. In addition to instant text messaging and chat organization, the system can be used for file transfer, notification sending,<br \/>\norganizing teleconferences, making voice and video calls. Advanced features such as typing notifications, user presence assessment online, read confirmations, push notifications, server-side search, history synchronization, and client state management are also supported. <\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Source: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53869\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a Matrix-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 Dendrite 0.1.0, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043e\u0437\u043d\u0430\u043c\u0435\u043d\u043e\u0432\u0430\u043b \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 \u0441\u0442\u0430\u0434\u0438\u044e \u0431\u0435\u0442\u0430-\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f. Dendrite \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u0434\u0435\u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Matrix \u0438 \u043f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 Matrix. \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 Synapse, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Python, \u043a\u043e\u0434 Dendrite \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Go. \u041e\u0431\u0435 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u044e\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 Apache 2.0. \u0412 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":96450,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-96449","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a Matrix-\u0441\u0435\u0440\u0432\u0435\u0440\u0430\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-dendrite-0-1-0-kommunikaczionnogo-servera-s-realizacziej-protokola-matrix\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a Dendrite 0.1.0, \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 Matrix | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a Matrix-\u0441\u0435\u0440\u0432\u0435\u0440\u0430\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-dendrite-0-1-0-kommunikaczionnogo-servera-s-realizacziej-protokola-matrix\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-11T23:42:16+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-11T23:42:16+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Release Dendrite 0.1.0, a communication server implementing the Matrix protocol | ProHoster","description":"The release of the Matrix server has been published","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-dendrite-0-1-0-kommunikaczionnogo-servera-s-realizacziej-protokola-matrix","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a Dendrite 0.1.0, \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 Matrix | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a Matrix-\u0441\u0435\u0440\u0432\u0435\u0440\u0430","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-dendrite-0-1-0-kommunikaczionnogo-servera-s-realizacziej-protokola-matrix","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-11T23:42:16+00:00","article:modified_time":"2020-10-11T23:42:16+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"96449","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:42:31","updated":"2022-10-02 17:54:28","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/96449","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=96449"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/96449\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media\/96450"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=96449"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=96449"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=96449"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}