Видение Кольца 2.0

Материал из KoltsoWiki

Перейти к: навигация, поиск

Предложу создавать не приложение, а стандарт. А уже на основе этого стандарта - семейство приложений на различных платформах и технологиях.

В текущее обычное серверное Кольцо мы закладываем будущий P2P принцип - у каждой сущности в системе есть UUID номер, который генерируется так, что не возникает необходимости проверять, есть ли где-то в сети такой-же номер - вероятность его повторения крайне низка. Его длина 16 байт.

Распределенная файловая сеть Kademlia построена на основе UUID. Каждый клиент получает UUID номер, каждый файл в сети получает UUID номер. Эта сеть позволяет работать вообще без центральных серверов. Каждый клиент сети Kademlia посылает поисковый запрос на свои знакомые клиенты - штук 100, каждый из них посылает запрос на своих знакомых, и так по всей сети каждый поисковый запрос пробегает подобно волне, в каждом запросе хранится номер источника запроса, поэтому когда волна натыкается на клиенты, где хранится необходимый файл, то эти клиенты посылают ответ напрямую на источник запроса.

Такая сеть может обходится без базы данных, Каждая запись, которую обычно бы хранили бы в базе данных тут может хранится в виде файла с UUID номером, а в каждом таком файле можно хранить еще и информацию о связях этого файла с другими файлами и о типе связи - таким образом мы получаем бессерверную семантическую сеть.

Чтобы гарантировать достоверность, можно генерить UUID (ссылку) на файл на основе MD5 алгоритма, тогда, можно будет проверить, соответствует ли файл ссылке - не подделан ли он. Т. е. отпечаток содержимого файла можно хранить в его UUID номере-ссылке.

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

Таким образом мы можем построить полностью децентрализованную викифицированную семантическую сеть с функционалом социальной сети. Это получается настоящий независимый распределенный облачный сервис.

Эта сеть может состоять из эксклюзивно написанных клиентов, а может также включать в себя мощные центральные сервера, обменивающиеся инфой с другими серверами и клиентами, тогда к таким серверам можно будет подключаться с помощью обычно браузера. Кстати aMule уже содержит веб-сервер, и позволяет подключаться к себе удаленно через браузер.

Запись о человеке в такой сети (иначе говоря его профиль) подписывается его PGP ключом. Таким образом будет легко проверить - кто действительно контролирует эту запись, верифицировать, профиль сети и реального человека.

И уже к профилю привязать через семантические ссылки всю инфу о френдах, проектах, ресурсах, ключевых словах, правах, статьях (вики-статьях) члена этой сети. Через UUID, MD5 и PGP ключи можно построить жесткие цепочки достоверности в распределенной сети.

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

Поэтому предлагаю разработать стандарт такой сети, потом начать разработку математических моделей и параллельно начать создание действующих образцов.

Только очень хотелось бы, чтобы стандарт был открытым (под открытой лиценизией).

да, чтобы такая сеть стала действительно облачным сервисом, то можно каждому клиенту этой сети дать механизм распределенных вычислений. Каждый процесс этих распределенных вычислений также получает UUID номер - вместо PID номера процесса, как в Юникс. Тогда такой процесс сможет мигрировать между клиентами. И мы получим децентрализованный P2P компьютер, а в перспективе и распределенную ОС, которая должна будет выдерживать гибель части своих процессов без нарушения целостности всей системы... =)))

Вот балерина вертится - а если к ней динаму приделать? То балерина будет ток давать.. =)