我正在开发一个使用 Openfire XMPP 服务器的聊天网站,客户端使用 Smack API。使用 Smack API 的 Web 项目是使用 Play!使其成为 RESTful 的框架。我选择玩!因为它的异步编程产品(Comet Sockets/WebSockets)。
基本上,到目前为止,我的架构如下所示:
Openfire <-> 网络服务器 <-> 用户/浏览器。
为了也支持 Android 设备并最大化代码重用,我是否应该将 XMPP 客户端代码实现为网站和 Android 客户端通用的 RESTful Web 服务?
Openfire <-> Web 服务 <-> 网站 <-> 浏览器/用户。
Openfire <-> Web 服务 <-> Android 应用程序。
由于引入了中间 Web 服务,我担心可伸缩性问题?由于必须通过多个组件,我是否会在通信中引入延迟?
任何关于上述内容的建议都会有所帮助。谢谢。