Просто перезаписать Backbone.sync
, чтобы он отправлял сообщения в socket.io и сообщал соответствующим моделям backbonejs на сервере об изменении состояния.
Интересная часть этого решения - настройка отношения мастер-мастер,Вам необходимо убедиться, что для любого клиента они могут только «обновлять» состояние моделей на сервере, на котором они «владеют», чтобы избежать хакеров и повреждения состояния на стороне сервера.
Таким образом, для каждого клиента они имеютнабор M, где этот клиент является хозяином всех моделей в M и имеет набор S, где этот клиент имеет подчиненных всех моделей в S.
. Он может только принудительно обновлять на сервере модели в M итолько один клиент должен иметь конкретную модель в M (или вам нужно реализовать надежную реализацию блокировки / объединения).
Всякий раз, когда модель на сервере обновляется, вы просто отправляете ее любому клиенту, у которого эта модель находится вS. (и нажмите на любого клиента, который имеет эту модель в M, если модель находится в M для нескольких клиентов).
Нужно много думать о контроле / разрешениях и владении, которые обычно обрабатываютсяКонтроллер MVC один раз клиент POST / PUT / DELETE некоторые данные.