Ale*_*kiy 1 mongodb node.js socket.io
我有一个问题,设置集群node.js/socket.io应用程序,使用socket.io存储,不是基于Redis而是基于MongoDB.我需要提一下我的应用程序使用Mongo来存储数据.所以我不想设置另一个数据库只是为了使soket.io能够跨多个进程工作.
我找到了一个选项 - mong.socket.io,但看起来我无法使用节点集群.我正在使用node:0.10.10,socket.io:0.9
我正在寻找任何解决方案,让我使用MongoDB作为在单独进程上运行的socket.io的存储.
指望你,谢谢.
任何群集工作者都可以使用mongodb或mongoose 轻松访问MongoDB 以获取所需数据.它也可以将数据本地存储为缓存.
一旦socket.io客户端连接,它将绑定到一个worker,并且在执行期间不会交换worker.
为了共享会话,您需要为socket.io创建会话中间件,该中间件将从其中一个工作人员请求来自MongoDB的会话详细信息.查看此答案,其中说明了如何从共享会话详细信息访问socket.io中的会话数据.并且为了使其成为集群,使用connect-mongo而不是MemoryStorage ,它允许在mongo中存储会话数据,并且它将使工作人员共享会话详细信息.
| 归档时间: |
|
| 查看次数: |
3054 次 |
| 最近记录: |