3

ejabberd 聊天服务器能否与 node.js/tornado/socket.io 等可扩展且快速的服务器技术集成以实现浏览器内聊天?

在这种情况下,ejabberd 服务器可能在后端运行,而前端可以使用 node.js/socket.io 等与客户端浏览器进行通信。所有聊天消息都需要通过 ejabberd 服务器进行路由。与以传统方式直接使用 ejabberd 相比,所有这些都有意义吗?它是否具有足够的可扩展性?

4

2 回答 2

0

我没有看到在您的架构中添加组件的好处。

ejabberd 和 XMPP 通常与 Web 技术和基于 Javascript 的客户端配合得很好。

您可以使用两种主要技术:

  • XMPP over Websocket 是最现代的方法。ejabberd 原生支持它。这意味着您可以创建一个基于浏览器的 XMPP 客户端来连接到 ejabberd。
  • BOSH 上的 XMPP。这是对 HTTP 协议的请求-响应性质的 XMPP 连接性质的模拟。这意味着您仍然可以为不支持 Websockets 的浏览器做 XMPP 聊天客户端。

Javascript XMPP 库通常同时支持 Websockets 和 BOSH。例如,您可以查看Strophe来实现您的 Javascript Web 客户端。

于 2012-05-09T12:19:53.103 回答
0

Wny 不使用在浏览器中运行的现有 Candy 客户端 (http://candy-chat.github.com/candy/) 来对抗后端 ejabberd 服务器?

于 2012-08-12T01:29:19.750 回答