我读了很多关于这个问题的问答,但是都没有令人满意的答案。
现有应用
一个使用Expressjs作为API实现的极简主义社交网络。使用MySql作为数据库。socket.io用于通知和ember.js作为前端框架。
我想要集成的功能
我只想实现XMPP的一些功能,例如:
- 点对点消息
- 在线状态和最后一次出现时间
- 群组聊天
- 阅读回执
我从类似问题中得到的基本想法。
- 需要一个客户端库(Strophe.js、Converse.js)
- 需要一个XMPP服务器(ejabberd、Openfire、Prosody)
问题
- 如何在这里集成聊天?
- 如何验证XMPP用户(FYI,我当前已实现JWT身份验证)?
- 建议使用redis(发布/订阅)与socket.io或mqtt(发布/订阅)来实现聊天。它是否可扩展?/性能如何?
我问的可能太广泛了。但仍然没有任何关于使用哪些技术集的想法。