golos-blockchain / ui-blogs

Blogs interface for GOLOS blockchain
https://golos.id
MIT License
7 stars 8 forks source link

Создание или портирование сервиса быстрого API (напр. Hivemind) #45

Open Lex-Ai opened 4 years ago

Lex-Ai commented 4 years ago

Для Steemit был разработан Hive - слой «консенсусной интерпретации», поддерживающий аутальное состояние социальных функций, таких как пост-фиды, подписки и сообщества. Написанный на Python, он синхронизирует базу данных SQL с состоянием цепочки, предоставляя разработчикам более гибкую / расширяемую альтернативу сырому API с нод.

https://github.com/steemit/hivemind

История появления Hivemind

Первоначально приложение steemit.com работало исключительно на нодах. Не было бэкэнда, кроме ноды с API. Как бы ни была мощна эта модель, есть две проблемы: (а) поддержание специфичных для пользовательского интерфейса индексов / API становится дорогостоящим, когда они тесно связаны с критическими узлами; и (b) разработчики внешнего интерфейса должны иметь возможность быстро выполнять итерации и получать доступ к данным гибкими и творческими способами без написания на C++

Снятие нагрузки с нод по основной функциональности блог-платформы (а) позволяет консенсусному узлу сосредоточиться на масштабируемости и надежности, и (б) позволяет внешнему интерфейсу поддерживать свой собственный уровень состояний, что обеспечивает гибкость.

asuleymanov commented 4 years ago

Тут не все так просто. Либо надо брать то что есть со Steem и переносить под наши реалии. Либо писать свой постепено.

Lex-Ai commented 4 years ago

Тут не все так просто. Либо надо брать то что есть со Steem и переносить под наши реалии. Либо писать свой постепено.

На данный момент есть некая альтернатива, поднимать ноду с mongo и работать с ней, но наск. понимаю имея аналог того же Hivemind под Голос, возможности для запуска клиентов и сервисов станут ещё шире...

asuleymanov commented 4 years ago

По идее сделать систему которая будет брать блоки и класть их БД не проблемма. Надо понять хватит ли только блоков или надо както всетаки разносить операции.