我看了一些文档,也稍微使用了一下。对比之下这两个协议的区别:
1. xmpp 只定义了核心协议,很多客户端不会遵守。而 matrix 比较新,定义的协议,新的客户端支持得比较全。
2. xmpp 抽象为消息传递的管道。而 matrix 抽象为房间。因此 xmpp 做群聊的话,每条消息都需要向所有客户发送一次(服务器房间搞定)。matrix 的话,则相当于把消息添加到 git repo,然后所有的客户端都同步一遍这个 repo.
3. xmpp 是纯文本协议,而 matrix 是二进制协议。理论是 matrix 更加高效,但是 xmpp 可以运行在 http 上面,因此可以穿透大多数防火墙。
总结了一下,感觉 matrix 并没有取得对 xmpp 的优势。大家觉得呢?
--
修改:hgoldfish FROM 112.47.122.*
FROM 112.47.122.*