python - 在我的网络服务器上实现实时聊天系统的最佳方式是什么?

标签 python perl xmpp

我对基于 Jabber 的东西很感兴趣,但我没有找到免费/开源的东西,所以我正在考虑写一个。

我已经安装了 Jabber 服务器,现在正在考虑编写客户端的方式。我正在考虑这两种方法之一。

1) 对在负责连接到服务器的网络服务器上运行的 jabber 脚本进行的 ajax 调用。但后来我想到,由于 jabber 客户端中涉及的依赖关系,当几个客户端连接时,它最终可能会消耗太多内存。

2) 另一种方法是运行一个作为守护进程运行的客户端,负责所有繁重的工作。这样我只需要一个发送欺骗性消息的客户端实例(发件人的名字与用户在网站上输入的任何名字一样)。在网络服务器上运行的一个简单脚本通过某种 API(可能是 XMLRPC 或 Msgpack?)与这个守护进程对话。

我认为 #2 更好,但我不确定。还有其他方法可以实现吗?我正在考虑为此使用 Perl 或 Python。

最佳答案

Jabber现在通常被称为XMPP,有几十个客户端和服务器,每种语言都有。如果您使用的是 Javascript(您提到了 Ajax),您可能需要 Strophe .大多数服务器都是模块化的,因此您只需加载所需的功能(考虑 Tigase、ejabberd 或 xmpppy)。编写自己的想法比听起来更糟糕。

关于python - 在我的网络服务器上实现实时聊天系统的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4701232/

相关文章:

linux - 我无法在 ubuntu 上启动 ejabberd

python - Pandas 交叉表,但具有来自第三列聚合的值

php - 如何通过文本搜索实现基于 Web 的查找文件数据库

perl - 如何解析电子邮件内容

login - 使用 XMPP 时,如何检测用户 (JID) 是否已在登录时登录?

jquery - 使用 Strope 库传输 XMPP 文件

python - django css 适用于 chrome 但不适用于 firefox

python - 没有使用 Python/C API 的名为 ctypes 的模块

python - 如何在 Django 中通过 SOAP 使用数据库?

json - Perl JSON 验证函数