聊天通常如何实施?

时间:2010-12-07 13:00:27

标签: web-services chat p2p chatroom

考虑您希望在计算机之间来回发送文本的情况。 (这可能是一对一的对话或一对多的对话。计算机也可能包括智能手机。)

一般情况下如何创建这个? 例如,您是否通过使所有各方成为接收请求的轻量级服务器来推送消息? (我对此推送部分特别感到困惑。)

在实践中使用了哪些特定的软件,协议和/或框架。

2 个答案:

答案 0 :(得分:3)

通过http://en.wikipedia.org/wiki/Comet_(programming)等服务器使用彗星(见Twisted)是很常见的。有关更深入的讨论,请参阅Choosing and deploying a comet server

其他选项包括使用RTFMP

等服务器Red5

答案 1 :(得分:2)

XMPP是一种广泛使用的协议,用于实现聊天功能,因此您可能希望深入了解它。 IRC是另一个,所以请继续阅读。

除此之外,通常有两种方法可以通过HTTP实现聊天:Long polling和AJAX轮询(每隔一秒左右)。

可以简化实施并减少带宽的下一个“重大”因素是web sockets

例如,Facebook的聊天是在Erlang中实现的。

如您所见,有许多技术,框架和语言可用于聊天实施,因此您必须进行一些研究,并选择您认为最适合您的方式。