我们有一个iOS应用程序,它具有聊天功能.目前它适用于长轮询.现在我们正在尝试修改它以使用套接字.当谈到socket时,我们已经开始进行研究,似乎最好的选择之一是使用带有socket.io的nod
在对redis进行一些研究之后,推荐的用法表明存储的数据应该适合内存.但是,我们有一个很大的数据库.我们想存储整个聊天记录.所以我们已经开始计划使用redis作为缓存数据库,它将存储在线用户的聊天记录(可能不是全部),并在从redis离线到mongodb / simpledb之后写入实际的对话(或者立即将它们都写入).
因此,作为总结,我们将决定使用nodejs和redis pub / sub来传递消息,redis作为缓存数据库,以及mongodb来存储整个会话.
你怎么看待这个设计?这可以接受吗?或者,如果有更好的方法可以建议,请您解释一下吗?
提前致谢.
对于聊天系统,你的想法很重要.如果你认为你将达到一百万用户,那就去吧.还要考虑可用性 – 您的系统将如何处理机器故障?