Using node.js in a fleet management application

I have a gps fleet management application that I think would greatly benefit from using node.js. I just started to look into node.js and still think I have much to learn, but would appreciate your advice and direction.

To give you and idea of our current setup:

A java app receives, compiles, and parses gps records into mySql db. The users than, though our application, query the database every 6 sec for the last record for a particular gps unit. During the day there are about 9 million records that are inserted into the database.

So would I would like to do is to use and include node.js within our java app and utilize it to send gps data to the client browser without it being queried into the database. In other words, i was thinking to do a small function that checks gps id (about 5000 ids in total) and compare to client id (200 in total) and based on that send that to the required node.js channel.

Providing that I do not have much experience with node.js, I would greatly appreciate it if you can tell me if my logic is sound and that node.js is the right way to go?

Thanks,

if you are already using Java why not using something like CometD (http://cometd.org/) it has the same (or similar) push functionality to Socket.io and it is already Java based. If you are using a java container other than Jetty, Atmosphere (https://github.com/Atmosphere/atmosphere) is another good option with lots of container support.

Generally speaking I think your designed is a bit flawed for "real time". When you get the updates you should be directly pushing them to the customer if they are connected and have an active "subscription" for the info. You can still update the database but why is the database the central clearing house for this information in a "push" model? It would make more sense to push directly to some kind of websocket style solution while you update the database in parallel. Then the only people querying the database are users logging in for a new session to get the "last historical point" and all subsequent updates are pushed without the the need for any database queries.

Anyone have any thoughts?