LINUX.ORG.RU

Меншинства?

vada ★★★★★
()
Ответ на: комментарий от Aceler

Я не буду спрашивать, слышал ли ты про GPG :))

Ну какой GPG в случае простого web-клиента?

KRoN73 ★★★★★
() автор топика

Diaspora уже предлагали?

sin_a ★★★★★
()
Ответ на: комментарий от qnikst

KRoN73, если ты меня не игнорируешь

Нет, не игнорирую :)

1). откуда брать данные о других серверах

Из домена пользователя. user@server

2). как/кому посылать запросы

Пользователи ur1@s1, ur2@s1, ur3@s2 френдят пользователя uw@s3. На сервере s3 остаётся запись о подписке. uw@s3 пишет новость. s3 отсылает её на s1 и s2. Те из полученных записей формируют поток для своих подписанных пользователей. Пользователь ur1@s1 пишет комментарий к записи. s1 отсылает комментарий на s3 (сервер автора), s3 снова, по подписке, рассылает комментарий серверам s1 и s2. Те добавляют его в ответы. На незагруженных серверах время реакции будет в считанные секунды, и без всяких периодических опросов и т.п.

2.78). как сделать логичное ttl запроса

Ну, это явно не самая большая проблема :) Можно просто ставить запрос в очередь, прошла — не проблем. Не прошла — увеличиваем ttl и возвращаемся через увеличенное время ожидания. Пока или время хранения не истечёт, или приёмный сервер, наконец, прочихается.

5). как избежать возникновление циклов

Не дёргать серверу самого себя :)

0). какие запросы кешировать

Ленты подписных объектов (блоги, топики, комментарии) хранятся фактически и на серверах читателей, и на серверах авторов.

6). как узнать, что полученные данные валидны

Тут уже только доверие серверам — источникам материалов.

7). как сообщить сервисам, которые выдали невалидные данные о том, что они невалидны

Послать отдельное сообщение. Или проигнорировать.

как описать это в формате спецификации для того, чтобы была свобода реализации такого сервиса

Фактически всё делаю в виде REST/JSON-запросов стандартизированного формата. Так что будет спецификация на формат данных для обмена, этого достаточно для реализации серверной структуры. Сам первоначальную инфраструктуру делаю на PHP/BORS, потом для сверки и отработки разного рода участников сети думаю сделать ещё сервер на Java/Playframework. Если дело выгорит, думаю будут желающие подключиться и с Django, RoR и т.п.

Да, тут ставку делаю на то, что вся инфраструктура легко делается не просто на готовых серверных решениях, а прямо на Web-фреймворках.

12). как защититься от криво реализованных сервисов

Информация о подписке пользователей хранится и на сервере автора и на серверах читателей. Если сервер автора левый, то сервера читателей просто не примут его информацию.

как сделать сервис расширяемым

А привязки к конкретным серверам тут вообще нет. Отсюда и расширяемость. Единственное, я не придумал, как реализовать децентрализованную рейтинговую систему. Так что рейтинги для тех читателей, которым они важны, скорее будут централизованными, на манер нынешних Jabber User Directoires.

как максимизировать выживание данных если нет своего сервиса

До конца не продумывал детали, но планирую делать официальный механизм «твинков». Ты можешь указать, что ur1@s1 и ur2@s2 — это один и тот же пользователь, ты сам. Тогда ты сможешь читать одни и те же ленты как на @s1, так и на @s2 при падении первого, на всё, на что ты подпишешься от имени ur2@s2 будет подписываться и ur1@s1.

Пока только не думал над вопросом синхронизации меток о прочтении материалов в таком варианте.

KRoN73 ★★★★★
() автор топика

Надо так подобрать, чтобы легко склонялось и могло быть глаголом. Как Гугл.

Valeg ★★★
()

Не вполне представляю концепт. Но из того что, как мне показалось, я понял, у меня родились такие названия: cell (сота, ячейка), hive, beehive, humanhive(!!!) (аналогия с ульем).

Вариант с муравейником предлагали.

Еще можно коммуна (commune), willage (w - как соединенные vv - virtual village)

Я мыслил так, что суть названия должна отражать концепцию общин людей, которые могут общаться в т.ч. между собой (если им это нужно).

Считаю идею (в своем её понимании) концептуально верной. Мой круг общения на 95% состоит из жителей моего же города. Зачем тогда эту инфу сливать в американские или какие-то там еще сервера. Кроме того отрезание внешних каналов мало скажется на функционале родной сети.

секурное сервер-серверное взаимодействие можно делать через ssh. Это именно то средство, которое для этого предназначено. авторизация, ессно, по ключам.

azure ★★
()

Буду оригинальным: матрица

Karapuz ★★★★★
()

распределённой

ВБегах

Deleted
()

Придумайте название для открытой распределённой социальной сети

Гадюшник.

King_Diamond
()
Ответ на: комментарий от tazhate

Ты сначала проект сделай, а потом уже название придумывай ;)

Название без проекта нужно чтобы называть файлы проекта , директории , префиксы глобальных переменных .... :D

kernel ★★☆
()

Акволабеан

Домены свободны:
akvolabeanproject.org
joinakvolabean.com

Главное сразу начать собирать донаты и крупные инвестиции.

winddos ★★★
()
Ответ на: комментарий от Aceler

не надо рассказывать мне принципы работы GPG, я с ними знаком.

В соц сети немного другая проблема, я наприме ищу: Вася Пупкин и запускаю поиск на своей ноде, моя нода если ей не известен Вася Пупкин, начинает опрашивать все остальные ноды известные ей, при этом желательно, чтобы запрос не попадал на скомпроментированные ноды и о появлении новых нод было какое-то уведомление. После того как Вася Пупкин будет найден, то он закешируется, нода будет знать у кого брать обновления и должна правильным образом обновяться. GPG здесь только для подтверждения ответов сервера (возможно и не нужно) и самих ответов (информации пользователя), да оно работает тут прекрасно. то ещё нужна куча всего вокруг.

qnikst ★★★★★
()
Ответ на: комментарий от KRoN73

будет что-то вроде спецификации пиши, может сделаю на haskell/yesod. Мне не очень нравятся некоторые вещи, но до release candidate протокола лезть не буду.

qnikst ★★★★★
()
Ответ на: комментарий от kernel

Название без проекта нужно чтобы называть файлы проекта , директории , префиксы глобальных переменных .... :D

Именно так :)

KRoN73 ★★★★★
() автор топика
Ответ на: комментарий от KRoN73

Название без проекта нужно чтобы называть файлы проекта , директории , префиксы глобальных переменных .... :D

Именно так :)

Plaster

justAmoment ★★★★★
()

ОРСС

r ★★★★★
()
Ответ на: комментарий от Eddy_Em

Этазачет. При чем ad-point будет в том что «вы проводите в сортире в день 1 час, в современном мире коммуникации обрались даже в сортир. Сидя в в сортире поделись впечатлениям и с друзьями 'всортире'.» Флешку туда конечно с вебкамом и всетакое.

r ★★★★★
()

Скандалы, Треп, purgatory, sanctuary, валгалла

Zodd ★★★★★
()
Ответ на: комментарий от KRoN73

formicarium? Длинновато, но достаточно оригинально :)

Не звучит. Я язык вывернул пока пытался это произнести.

doomgl
()

Fido уже предлагали? Fidonet-2.0

Slavaz ★★★★★
()
Ответ на: комментарий от KRoN73

ты понимаешь, что это не совсем децентрализованная сеть, а сеть из нод соцсети? Хотя идея твинков, более менее вытаскивает ситуацию, хотя возможно такой план и есть.

qnikst ★★★★★
()
Ответ на: комментарий от KRoN73

Название без проекта нужно чтобы называть файлы проекта , директории , префиксы глобальных переменных .... :D

Именно так :)

Назови его MY_PLACEHOLDER. Потом sed-ом заменишь...

Manhunt ★★★★★
()
Ответ на: комментарий от note173

Perfect Graph. Adjacent. В общем, что-нибудь с графами.

Вершины графа - люди, а ребра - связи между ними, так? Тогда напрашивается название «социобляди» :D

Manhunt ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.