• WebSockets в Scorocode или чат своими руками за 15 минут
    0
    Спасибо, поправим!
  • WebSockets в Scorocode или чат своими руками за 15 минут
    0
    Функционал, который сейчас предоставляет платформа, намного шире одних вебсокетов.
    Дополнительно к функционалу реализована отказоустойчивость, репликация, балансировка нагрузки. Для каждого приложения выделяется кластер БД, API.

    Согласно нашей тарифной политике, пользователю доступно бесплатно:
    • 20 запрсов к API в секунду
    • 10Гб для хранения файлов
    • 200 одновременных подключений к websockets
    • 3 секунды на исполнение серверного кода


    Давайте проведем небольшой расчет. Для реализации простого приложения, которому достаточно вышеуказанных лимитов, потребуется БД, app server, балансировщик. Расчет будем вести с учетом не самых мощных машин. Для небольшого отказоустойчивого проекта нам потребуется:

    • БД реплика (арбитер поставим на машинку с application server) — 2 машины по 4 ядра, 16 Гб Озу
    • Балансировщик — 2 машины (на случай отказа) по 8 ядер, 8 Гб Озу
    • App server — (в целях экономии поставим на те же машинки, что и балансировщики)


    Берем стоимость ресурсов с сайта известного российского облачного хостера:
    4 ядра, 16 Гб Озу — 5 980р
    8 ядер, 8 Гб Озу — 3 900р

    (3900 * 2) + (5980 * 2) = 19760

    Итого стоимость: 19760 руб. в месяц

    В стоимость не включены расходы на канал, дисковое пространство, а также стоимость услуг администратора.
  • WebSockets в Scorocode или чат своими руками за 15 минут
    0
    Лучше напишите, что с правами (подписка/получение/отправка)?

    Доступ к вебсокетам регулируется ключом websocketKey, который можно поменять в настройках приложения.

    Есть ли возможность подписки по маске?

    В данный момент нет, но мысль интересная, подумаем.

    p.s. Хотелось бы получить больше информации по поводу плюшек, которых не хватает и были бы востребованы.
    Например: подписка по маске, буферизация и т.д.
  • WebSockets в Scorocode или чат своими руками за 15 минут
    0
    Магия в том, что нет никакой серверной логики. Т.е. Вы подключаете SDK, указываете канал на который нужно подписаться, и он работает в режиме broadcast. В приведенном примере чата всего один общий канал. Но никто не мешает использовать разные каналы для создания тех же комнат.
    Платформа Scorocode хранит данные о подписчиках на каналы и при поступлении данных рассылает их. Вы можете использовать эти возможности например для синхронизации корзины на разных вкладках, используя в качестве названия канала id пользователя, где каждый клиент будет подписываться на свой канал, либо для отправки каких-либо обновлений определенному пользователю.
  • WebSockets в Scorocode или чат своими руками за 15 минут
    0
    Спасибо за комментарий. Целью статьи было не создание чата, а возможность рассказать немного о внутреннем устройстве websocket'ов в сервисе Scorocode, а так же показать пример, как эту технологию можно использовать в рамках нашего сервиса.

    По поводу «не тратиться», мы уже думаем над кодогенерацией :)
  • Разработка облачного сервиса Scorocode: часть 1
    0
    Здравствуйте. Уже работаем в данном направлении.