我现在用ejabberd,另外听说OpenFire也有人在用。有谁比较过XMPP服务器的不同实现吗?请从易用(如学习曲线)和功能完整性的角度给出一些建议。
XMPP服务器用于Web页面以及App客户端的聊天。要求可以方便地集成现有的数据库的用户数据,如昵称,头像。最好是支持XEP-0084,支持XEP-0153也可以。能够支持在服务端保持聊天记录就更好了 :)
据我所知,Prosody 是支持昵称和头像的,哪个 XEP 不清楚。支持数据库存储,具体不清楚,反正有插件机制。保持聊天记录的话可以使用插件搞定。那个我写了一半。语言是 Lua,一般用用还好。管理通过 XMPP 表单完成,无 Web 界面。
ejabberd 是 Erlang 写的,所以插件估计也得用 Erlang 写了。昵称和头像肯定是支持的。我在使用中遇到这样个问题:它的数据接收有些不及时,在 socket 的接收缓冲区满时客户端连接会断掉。带简单的 Web 界面。
以上两个简单配置都不难,配置文件都是以其编写语言(Lua/Erlang)的格式保存的。
Openfire 是 Java 写的,配置文件好像是 XML,带 Web 界面。我只配置过一次,不太记得了。在一些讨论 XMPP 的地方不止一次看到 Openfire 有支持不完善的 bug。不建议使用。
对了,像这种比较维基百科上一般都有不少信息的,比如这个 https://en.wikipedia.org/wiki/Compari...。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。