The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Проект RethinkDB представил Horizon, открытую альтернативу Firebase

19.05.2016 23:37

Проект RethinkDB, развивающий документо-ориентированную СУБД, обеспечивающую хранение данных в формате JSON, анонсировал первый официальный выпуск платформы Horizon, предоставляющей разработчикам универсальный серверный бэкенд для работы web-приложений, хранящих данные на сервере и обменивающихся информацией в реальном режиме времени. Код Horizon написан на языке JavaScript и распространяется под лицензией MIT.

Используя Horizon разработчики могут сосредоточить всё внимание на создании работающего в браузере кода приложения, обращаясь к типовому бэкенду через специальный API, который кроме работы с данными также позволяет организовать аутентификацию, разграничение доступа, управление пользователями и другие функции. По своей сути Horizon может рассматриваться как открытая и запускаемая на своих мощностях альтернатива продвигаемого компанией Google проприетарного сервиса Firebase.

Horizon включает в себя:

  • Сервер для организации работы бэкенда, построенный на базе фреймворка Node.js, технологии WebSocket и СУБД RethinkDB, обеспечивающий построенное хранение данных, аутентификацию пользователей, проверку прав доступа и перенаправление потоков между приложениями в режиме реального времени.
  • Клиентская JavaScript-библиотека, которую можно использовать на стороне выполняемого в браузере web-приложения (фронтэнда) для сохранения JSON-документов в БД, отправки запросов и подписки на получение обновлений информации;
  • Утилита командной стоки "hz" для генерации шаблонов типовых проектов, запуска локального сервера Horizon и размещение приложений в облаке.

Первый выпуск предоставляет следующие API:

  • Subscribe - потоковый API для построения realtime-приложений, работающих в браузере без необходимости написания серверного кода;
  • Auth - API аутентификации, поддерживающий типовых провайдеров аутентификации, включая Facebook, Twitter, Google и GitHub
  • Identity - API для управления учётными записями пользователей;
  • Permissions - модель безопасности, позволяющая разработчику ограничить доступ к данным;

В будущих выпусках планируется появление:

  • Session - управления сеансами;
  • Geolocation - API для создания приложений, манипулирующих данными о местоположении пользователя;
  • Presence - API для определения присутствия пользователя в online и информирования об этом других пользователей;
  • Plugins - система подключения плагинов, расширяющих функциональность Horizon, например, средства для создания новых сервисов;
  • Backend - API и протокол для интеграции написанных с использованием библиотеки Horizon web-приложений со сторонними реализациями бэкендов.
  • Встроенный web-интерфейс для интерактивного просмотра данных на бэкенде;
  • Улучшенные средства управления соединениями и восстановлением после разрыва связи;
  • Возможность создания собственных команд Horizon с использованием языка запросов ReQL и JavaScript;
  • Поддержка загрузки файлов от клиента;
  • Аутентификация по паролю (в дополнение к OAuth-провайдерам);
  • Встроенная поддержка извлечения данных с использованием языка запросов GraphQL.


  1. Главная ссылка к новости (http://horizon.io/blog/horizon...)
  2. OpenNews: Выпуск СУБД RethinkDB 2.0
  3. OpenNews: Facebook представил новый язык формирования запросов GraphQL
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/44464-rethinkdb
Ключевые слова: rethinkdb, horizon, javascript
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (13) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, vitalif (ok), 23:44, 19/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +22 +/
    Утилита командной строки hz, мне уже нравится этот проект
     
  • 1.2, Crazy Alex (ok), 23:58, 19/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну, оставляя за скобками ублюдочность самой идеи веб-приложений и хранения данных "у дяди" - мысль здравая. 9/10 веб-приложений на серверной стороне совершенно примитивны и легко укладываются в стандартные схемы - святое дело эти стандартные схемы формализовать и упростить работу с ними.
     
     
  • 2.3, Аноним (-), 02:30, 20/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Довелось тыкать несколько веб-апликух на Firebase. Работают на удивление хорошо.

    > самой идеи веб-приложений и хранения данных "у дяди"

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

     
     
  • 3.4, Crazy Alex (ok), 04:24, 20/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    Одна из основных вещей, которые мне не нравятся в веб-приложениях - простота обновления, как ни странно. По факту это означает, что невозможно сказать "ребята, вы сделали урода и я останусь на предыдущей, рабочей версии" - а, к примеру, gmail бессмысленно портили не раз и не два. Локально установленный софт в этом здорово помогает, даже если без сети он работать не может. Хотя, конечно, та же MS с этим "недостатком" локального софта успешно борется, к примеру, ломая не обнововшийся скайп.
     
     
  • 4.11, Аноним (-), 19:02, 21/05/2016 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Одна из основных вещей, которые мне не нравятся в веб-приложениях - простота
    > обновления, как ни странно. По факту это означает, что невозможно сказать
    > "ребята, вы сделали урода и я останусь на предыдущей, рабочей версии"
    > - а, к примеру, gmail бессмысленно портили не раз и не
    > два. Локально установленный софт в этом здорово помогает, даже если без
    > сети он работать не может. Хотя, конечно, та же MS с
    > этим "недостатком" локального софта успешно борется, к примеру, ломая не обнововшийся
    > скайп.

    Скажите на милость, а в СПО подобных фактов никогда не было, да? А недавно приснопамятный SynkThing, ломавшийся по факту трижды? Ну а, кстати, что нащет ведра Линя? Которое разламывается раз в полгода?

     
     
  • 5.13, Аноним (-), 01:02, 22/05/2016 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Упускаешь важный момент: возможно остаться на старой версии. Или даже форкнуть.
     
  • 4.14, Аноним (-), 01:04, 22/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    > Одна из основных вещей, которые мне не нравятся в веб-приложениях - простота
    > обновления, как ни странно. По факту это означает, что невозможно сказать
    > "ребята, вы сделали урода и я останусь на предыдущей, рабочей версии"
    > - а, к примеру, gmail бессмысленно портили не раз и не
    > два. Локально установленный софт в этом здорово помогает, даже если без
    > сети он работать не может. Хотя, конечно, та же MS с
    > этим "недостатком" локального софта успешно борется, к примеру, ломая не обнововшийся
    > скайп.

    Поэтому я адепт self-hosted решений.

    // #3

     

  • 1.5, Анонимусим (?), 10:01, 20/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отличная новость и поддержка GraphQL из коробки очень радует. Вскоре думаю будет популярна аббревиатура: RRGH (React или React Native, Relay, GraphQL, Horizon), как когда то LAMP.
     
  • 1.6, Вадик (??), 10:41, 20/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А кто-нибудь может сказать мне, область применения RethinkDB отличается от MongoDB?
     
     
  • 2.7, anonymous (??), 11:07, 20/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    С RethinkDB можно получать изменения в режиме реального времени.
    В MongoDB есть полнотесктовый поиск.
    В остальном отличаются не сильно.
     
     
  • 3.9, Аноним (-), 17:34, 20/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    А как же скорости? :O
     
     
  • 4.15, Аноним (-), 18:33, 24/05/2016 [^] [^^] [^^^] [ответить]  
  • +/
    для "скорости" - немного других видов ДБ нужны )
     

  • 1.8, Аноним (-), 11:24, 20/05/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    удивительно но в целом - оно даже работает. но им надо пока секьюрити пилить. то что впилили пароль(наконец-то!)хорошо, но надо 2/3-факторной авторизации поддержку впиливать, тк во всех "серьезных" БД-применениях - оное принципиально.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2020 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру