I have developed a tracking system using a GPS device connected to a Linux box. It collects the coordinates as it progress. It's done with a python script, which is listening to the GPS device and write the coordinates to a CSV file when it sees new reading by the GPS device.
My scenario is to use multiple of these Linux boxes each connected to a GPS device. I need all collected coordinates to be synchronized to a central server in realtime. The purpose of this is for, mapping all the devices in in realtime in the central server.
My question is about, how and what are the technologies can I use to synchronize the coordinates from multiple devices to the central server in realtime.
As of my research, I have came across of two primary way.
- Using RSYNC - synchronize the collected data periodically to upstream with Linux's
- Push the data through HTTP API
There are 2 problem with above mentioned methods, one is, one is this types of synchronization can not be set to work on realtime. Always there will be a delay of sync interval. Second is, I am afraid, if the sync interval is very low, the central server will become resource hungry.
Am I missing a 3rd idea or one of these both will fit to my work?