社交网站上IM /聊天系统的想法
我正在创建一个社交网站,我需要一个IM /聊天解决方案。
对话只是一对一的,用户只能与他们的朋友聊天(即Facebook聊天 - 没有频道,没有房间...)。
该网站使用MySQL数据库在CodeIgniter(PHP)中制作。 可能会被放在VPS(Linux)上,所以我可能会控制环境。 此外,预计将有超过10万名用户。
所以,我需要一些关于如何进行聊天的想法。
到目前为止我的想法:
Node.js
和socket.io
创建聊天,并使其独立于网站的其他部分 经过一些研究并阅读了一些关于SO的答案
https://stackoverflow.com/a/11362929/928540
https://stackoverflow.com/a/5654487/928540
我真的很喜欢Node.js
和socket.io
的想法,所以我想听听一些关于它的意见,也许一些指导,链接,帮助,教程...
此外,预计将有超过10万名用户
我认为这个问题还有多少活跃用户/连接。
每隔X秒进行一次Ajax轮询(对于网站来说这不是一个好的解决方案)。
诚然。 这是一个坏主意。
实现Jabber / XMPP系统(我对此没有任何信息,也不可能)
Ejabberd和BOSH之类的东西很受欢迎。 我使用韵律玩,因为它非常容易安装,而且strophe.js作为BOSH客户端(JavaScript在浏览器中)。
使用第三方服务(如Pusher.com)
最容易实现(无缩放问题),但可能会变得昂贵。 5000个同时连接将花费您每月199美元(太贵),我认为您可能需要? 然后你又有大约5000个活动连接,所以它是有利可图的(?)。
在Node.js和socket.io中创建聊天,并使其独立于网站的其他部分
非常流行的解决方案,但现在我相信一些用户正在经历内存泄漏(但这可能已经解决)。 这可能只是websockets传输的问题。 此外,它可能不是真正的泄漏,但由于惰性气相色谱只是高内存使用量。 我会建议在完全投放之前进行配置。
流星可能是您可以使用的解决方案。 它旨在创建“实时”应用程序,我敢打赌,构建一对一消息系统是一件轻而易举的事情。
我知道这不是PHP,但你提到使用Node.js,我想如果你可以使用Node.js,那么你可以使用它。
链接地址: http://www.djcxy.com/p/94109.html