Бэкэнд RESTful и socket.io для синхронизации

Сегодня мне пришла в голову следующая установка. Создайте сервер nodejsвместе с expressи socket.io. С экспрессом я бы создал RESTful API, который подключен к монго. BackboneJS или аналогичный подключат клиента к этому REST API.
Теперь каждый раз, когда mongodb (, т. е. данные в нем, которые меня интересуют ), изменяются, socket.io запускает событие для клиента, которое переносит курс на данные, которые изменились. Затем клиент инициирует соответствующие запросы AJAX к REST, чтобы получить новые данные там, где они ему нужны.

Таким образом, соединение socket.io будет вести себя как триггер синхронизации. Он будет там на протяжении всего визита и таким образом сможет управлять сеансами. Вся полезная нагрузка будет отправлена ​​​​через http.

Плюсы:

  • REST API для использования с другими клиентами, кроме веб-клиентов
  • Аутентификация может быть выполнена полностью через socket.io. Отправка токена только вместе с запросами REST.
  • Используйте преимущества REST.
  • Также будет хорошо работать с сервисом pub/sub, таким как Redis

. Минусы:

  • Большие накладные расходы, чем при использовании чистого socket.io.

Как вы думаете, есть ли какие-то большие недостатки, о которых я не подумал?

8
задан bijan 18 July 2012 в 23:19
поделиться