今天,我有了以下设置的想法。与和一起创建nodejs
服务器。使用 express,我将创建一个连接到 mongo 的 RESTful API。BackboneJS 或类似的东西会将客户端连接到该 REST API。
现在,每次 mongodb(即我感兴趣的数据)发生变化时,socket.io 都会向客户端触发一个事件,该事件将携带一个对已更改数据的进程。然后,客户端将触发对 REST 的适当 AJAX 请求,以在需要的地方获取新数据。express
socket.io
因此,socket.io 连接的行为类似于同步触发器。它会在整个访问期间都在那里,也可以以这种方式管理会话。所有有效负载都将通过 http 发送。
优点:
- 用于 Web 以外的其他客户端的 REST API
- Auth 可以完全通过 socket.io 完成。仅与 REST 请求一起发送令牌。
- 使用 REST 的好处。
- 也可以很好地与 Redis 等发布/订阅服务一起使用
缺点:
- 比使用纯 socket.io 更大的开销。
你怎么看,有什么我没有想到的重大缺点吗?