Mastodon — новая платформа для создания децентрализованных социальных сетей
17 апреля 2017 года
Представлен новый выпуск свободной платформы для развёртывания децентрализованных социальных сетей - Mastodon 1.2. В отличие от централизованных социальных сетей, создаваемые при помощи Mastodon сервисы не подконтрольны отдельным поставщикам и могут создаваться на собственных мощностях пользователей. Если пользователь не имеет возможности запустить собственный узел, то он может выбрать заслуживающий доверия публичный сервис для подключения. Mastodon относится к категории объединённых (federated) сетей, для образования единой структуры связей в которых применяется набор протоколов OStatus, совместимый с решениями на базе платформы GNU Social.
Код серверной части проекта написан на языке Ruby с использованием Ruby on Rails, а клиентский интерфейс написан на JavaScript с применением библиотек React.js и Redux. Исходные тексты распространяются под лицензией AGPLv3. Также имеется статический фронтэнд для публикации общедоступных ресурсов, таких как профили и статусы. Хранение данных организовано при помощи PostgreSQL и Redis. Предоставляется открытый API для разработки дополнений и подключения внешних приложений (имеются клиенты для Android, iOS и Windows, можно создавать ботов).
Mastodon позиционируется как альтернативная реализация GNU Social. Платформа базируется на использовании формата ActivityStreams (лента публикаций), а также протоколов Webfinger (определение информации о пользователе через идентификатор похожий на email), PubsubHubbub (подписка на ленту публикаций) и Salmon (децентрализованный обмен сообщениями). Сообщения обрабатываются в хронологическом порядке. Размер публикации ограничен 500 символами, возможна передача коротких видео. Возможно определение настроек приватности в привязке к отдельным публикациям.
Основные возможности:
- Полная переносимость с GNU Social и другими платформами на базе протоколов OStatus;
- Обновление списка событий в реальном времени - информация обновляется сразу после поступления новых сообщений в лентах, на которые оформлена подписка. Доставка информации о новых событиях осуществляется через WebSockets;
- Автоматическое объединение нитей обсуждений - если пользователь, на сообщения которого оформлена подписка, ответит какому-то пользователю, неизвестному на текущем сервере, то сервер загрузит полную нить обсуждения;
- Поддержка прикрепления изображений и видео в формате WebM;
- Возможность работы в качестве провайдера OAuth2 для сторонних приложений;
- Все ресурсоёмкие и длительно выполняемые задачи запускаются в фоне и не влияют на отзывчивость интерфейса;
- Возможность быстрого развёртывания сервера при помощи готового образа Docker.
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.