Real time web tracking app

此生再无相见时 提交于 2019-12-25 02:34:48

问题


There is a fleet management system. In a simplified form, it consists of:

Service (Java, JDBC), which communicates with all devices on the car by socket (receives new data, parses and puts to the database (Mysql)).

Web interface (Server side: Tomcat, Java, Spring, JDBC, Mysql. Client side: GWT, GWTP, GoogleMaps). It requests data from the server every 10 seconds using a GWT-RPC and makes the appropriate changes on the client.

Objective: to make real time applications. All data on the page are updated independently at different points in time immediately after receiving them on server. Compatible with all new browsers (browsers, that do not support WebSockets should also work with the application without adding alternative code). Opensource frameworks.

1) How do I notify my Java server side that there is new data in the database (received new information from device. (insert operation). Or updated, for example, the name of the car (an update operation)). Mysql -> Java?

2) How do I notify all clients that something has changed on the server? Java -> GWT (please explain in brief organization of security. Each user sees his cars and a small subset of all the data that apply to them)

3) Smoothly without jumps and blinks move units around the map to the impression that they were going.

With regard to 2), then tend to the Atmosphere framework, but I accept any offers.

if you know the answer to one of the questions well - write. I would be very grateful

Thanks in advance for your answers


回答1:


From my point of view, you need to implement queue systems and push notification.

Replying by bullets:

1) Use JMS (http://docs.oracle.com/javaee/6/tutorial/doc/bncdq.html) to have "producer" (i.e.: the services) notify the availability of new data

2) Use push notification to clients (e.g.: Atmosphere - https://github.com/Atmosphere/atmosphere) to bring the new data to show to customer. For the routing of the right information to the right client, it depends on the data you have available to dispatch the data on the queue

3) This is the consequence of the first two points... you UI should get update only in the changed parts.

Hope to have been helpful



来源:https://stackoverflow.com/questions/25805743/real-time-web-tracking-app

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!