2014-09-12 82 views
0

有一个车队管理系统。通过套接字 (接收新数据,解析并放入数据库(Mysql))与汽车上的所有设备进行通信的服务(Java,JDBC))服务(Java,JDBC)包括:实时网络跟踪应用

。 Web界面(服务器端:Tomcat,Java,Spring,JDBC,Mysql。客户端:GWT,GWTP,GoogleMaps)。 它使用GWT-RPC每10秒向服务器请求一次数据,并在客户端进行相应的更改。

目标:制作实时应用程序。在服务器上接收到数据后,立即在不同时间点对页面上的所有数据进行独立更新 。兼容所有新浏览器(浏览器, 不支持WebSockets也应该与应用程序一起工作,无需添加替代代码)。开源框架。 1)如何通知我的Java服务器端数据库中有新数据(从设备接收到新信息 (插入操作)或更新,例如汽车的名称(更新操作))。 Mysql - > Java?

2)如何通知所有客户端服务器上发生了某些变化? Java - > GWT(请详细解释安全组织的安排,每个用户都看到他的汽车和适用于它们的所有数据的一小部分)

3)平滑地没有跳转和闪烁,印象,他们正在去。

关于2),然后倾向于大气框架,但我接受任何优惠。

如果你知道其中一个问题的答案写得很好。我会提前很感激

谢谢您的回答

回答

0

从我的角度来看,你需要实现队列系统和推送通知。

回复子弹:

1)使用JMS(http://docs.oracle.com/javaee/6/tutorial/doc/bncdq.html)有 “生产者”(即:服务)通知新的数据

2)使用推送通知给客户的可用性(如: Atmosphere - https://github.com/Atmosphere/atmosphere)将新数据展示给客户。为了将正确的信息路由到正确的客户端,它取决于您可用于发送队列中的数据的数据。

3)这是前两点的结果...您的UI应该更新只在变化的部分。

希望对我有帮助

+0

谢谢@Dan M.至于推送通知,我也选择了气氛。至于我的java服务和Tomcat之间的通信,那么我喜欢JMS的想法。 JMS可以选择什么实现(Spring,ActiveMQ等)?如果你有好的例子的链接 - 我将非常感谢 – Alex 2014-09-18 07:45:53

+0

我认为很大程度上取决于你的设置和应用程序服务器......每个实现的JMS功能差不多。作为一个经验法则,我使用最适合正在使用的应用程序服务器的那个 – 2014-09-22 11:09:36