0

我期待构建一个混合的移动和桌面Web应用程序,可以将服务器推送到客户端,但需要一些关于我应该查看或采取的优选技术和路线的建议。什么是现代和简单的方式来处理服务器从后端推回到客户端层?我还想补充一点,我没有与许多可能在这种情况下有所帮助的前端技术合作,但如果他们能够完成这项工作,我们很乐意尝试一些技术。带有服务器推送的移动和桌面Web应用程序

下面是一个粗略的图表,显示了我想要实现的场景。更多细节和所需流量波纹管。

Step 1
1.台式-1是登录-中的第一个,设置一些设置,并在下一动作的控制。
2.随着未来的客户端登录,其他人将通过服务器推送通知并且UI更新反映了这一点。其他已加入的客户端现在正在等待由Desktop-1执行的操作。
3. Desktop-1执行发送到后端的操作。
4.后端使用更新的数据向所有其他客户端发送推送消息,以便它们可以刷新反映新当前状态的UI。
5.接下来执行某个操作的是其中一个客户尚未轮到该过程并重复该过程。
类似于回合制游戏。

•通过移动/桌面浏览器访问。
•一次只有一个客户端可以控制并能够发出一个操作。
•我不指望大量的客户(大约10个),但是学习任何可以扩展的新技术都会很有趣。
•简单的用户界面 - 在外观和UI框架上没有真正的偏好。

我已经看过了,到目前为止,可能使我的任务是可行的:
•已经做了一些GWT应用程式之前不同,Vaadin看起来像一个有趣的和合适的选择。也许可以为移动设备提供TouchKit用户界面,并为桌面提供常规服
•Spring Boot,Bootstrap,具有WebSockets或某些框架的Java后端 - Errai/Atmosphere。

回答

2

我将从Vaadin角度回答这个问题:

Vaadin是非常适合这个,因为它处理您的所有要求开箱。

使用正确的用户界面主题和布局,您可以获得适用于不同客户端类型的响应式用户界面。

服务器推送已经存在,具有多级后备,具体取决于客户端的功能。

实现自己(或使用插件)需要的唯一东西是从Desktop1到其他所有其他消息的“广播”,反之亦然。 为此,有一些事件总线样式插件,它允许不同的客户端进行通信。

对于一些hunderd用户来说,扩展不是一个大问题,除非您在服务器上的用户会话中存储了太多信息。 但是,根据邮件大小,必须将邮件发布到499个其他客户端时,它可能会出现带宽问题。 测试没有问题,但是向499个客户端“播放”视频的速度往往很慢。

相关问题