我有一个与MySpace/Facebook类型社区相似的社交网站,我在灯具设置上使用PHP/MySQL。
我一直想拥有自己的即时信使,它会在用户的PC上使用类似于AIM的PC

在我的网站上,该程序中的buddylist将包括我的网站上的用户,也将向用户显示旁边的用户图像

我的网站上的名称和链接。

现在我知道这是可能的,但是让我不想这样做的是它将需要的服务器资源。所以我问,

如果您要这样做,您将如何处理?

您将使用哪种语言来制作.EXE程序?

是否有一些使用户连接到另一个用户的地方,以使他们之间的每条消息都不会击中我的MySQL DB?

任何提示/建议/建议欢迎

有帮助吗?

解决方案

我建议您使用XMPP,这是Jabber的核心协议。

http://xmpp.org/

这是许多网站使用的协议,例如Google Talk。

如果您想显然要保留日志,则需要一个数据库。如果纯粹是实时的,那么您可能不需要通过数据库存储消息。

如果您只想在网站上使用Ajax聊天功能,则应在线搜索,因为其中有很多。如果您只想使用通用聊天服务器,只需使用jabber或irc即可。

其他提示

使用Java(和XML)或任何其他语言编码SOAP(简单对象访问协议)更容易,更快。

对等聊天与任何形式的P2P系统具有相同的陷阱,那就是每个人都坐在硬件防火墙后面。实际上,他们都不知道如何更改防火墙规则,甚至更少。

您不必使聊天服务器击中DB。最简单的聊天协议实际上只不过是各种代理。客户端A连接到服务器,客户端B连接到服务器,来自客户端A的消息转发到客户端B。非常快,非常简单,可以处理很多客户端(我们在这里谈论数千个。)。我建议您实现有限的消息缓存(例如5至10条消息),因为很少有人会因为随机消息被删除而感到困惑。缓存一些消息,要求客户提供每条消息的ACK信号……等等。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top