【问题标题】:Real time web tracking app实时网络跟踪应用程序
【发布时间】:2014-11-06 11:34:57
【问题描述】:

有一个车队管理系统。 简而言之,它包括:

Service(Java、JDBC),通过socket与车上所有设备通信 (接收新数据,解析并放入数据库(Mysql))。

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

目标:制作实时应用程序。页面上的所有数据都是独立更新的 在服务器上收到它们后立即在不同的时间点。兼容所有新的浏览器(浏览器, 不支持 WebSockets 也应该在不添加替代代码的情况下与应用程序一起使用)。开源框架。

1)我如何通知我的Java服务器端数据库中有新数据(收到新信息 从设备。 (插入操作)。或更新,例如,汽车的名称(更新操作))。 mysql -> Java?

2) 我如何通知所有客户端服务器发生了变化? Java -> GWT(请简要说明 安全组织。每个用户都会看到他的汽车以及适用于他们的所有数据的一小部分)

3) 无需跳跃和眨眼就能平稳地在地图上移动单位,给人一种他们正在前进的印象。

关于 2),则倾向于 Atmosphere 框架,但我接受任何提议。

如果你很清楚其中一个问题的答案,那就写吧。我将不胜感激

提前感谢您的回答

【问题讨论】:

    标签: java mysql google-maps gwt real-time


    【解决方案1】:

    在我看来,你需要实现队列系统和推送通知。

    用项目符号回复:

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

    2) 使用推送通知给客户(例如:Atmosphere - https://github.com/Atmosphere/atmosphere)将新数据展示给客户。对于将正确的信息路由到正确的客户端,这取决于您可用于调度队列上的数据的数据

    3) 这是前两点的结果...您的 UI 应该只在更改的部分中获得更新。

    希望对你有所帮助

    【讨论】:

    • 谢谢@Dan M。关于推送通知,我也选择了氛围。至于我的 java 服务和 Tomcat 之间的通信,那么我喜欢你使用 JMS 的想法。选择什么 JMS 实现(Spring、ActiveMQ 等)?如果你有好的例子的链接 - 我将非常感激
    • 我认为很大程度上取决于您的设置和应用程序服务器......每个实现的 JMS 功能或多或少是相同的。根据经验,我使用最适合正在使用的应用程序服务器的那个
    猜你喜欢
    • 1970-01-01
    • 2019-11-29
    • 1970-01-01
    • 1970-01-01
    • 2021-07-23
    • 1970-01-01
    • 2012-02-15
    • 2015-01-20
    • 1970-01-01
    相关资源
    最近更新 更多