从存储的消息切换到节点和表达中的实时聊天

时间:2013-02-10 05:43:38

标签: node.js mongodb express socket.io chat

我是服务器端开发的新手。我正在尝试通过这样做来学习我在服务器上使用express构建应用程序,mongodb作为我的数据库,并在客户端使用twitter bootstrap构建angularjs。

我不知道这是否是最实用的方法,但在考虑如何在用户之间实现消息传递时,我想到了一个名为Conversation的mongodb模型,其中包含id和对话中每个用户的id数组以及另一个数组与消息对应的字符串。然后将此模型添加到我的REST API中。

但是我们可以说对话中的所有/部分用户都在线,为什么不从socket.io中受益。那我怎样才能从这个切换到实时聊天?与mongodb的交互是否与解释完全相同,而socket.io只是通知每个在线用户发生了交互?如果有,怎么样?还是别的什么?

1 个答案:

答案 0 :(得分:0)

socket.io可以将实时事件发送到连接的套接字,您可以使用数据库来存储无法传递的消息以及离线用户。

另外,您可能希望使用类似Redis的东西,因为它具有订阅和发布功能的渠道。