I'm a programmer, but I'm new to GIS.
I want to build a map that displays the status of some IoT devices I work with.
My ideal vision is a world map, which would fill the screen, but for now, Europe would do, or even a single European country. It would be nice to be able to switch between EU and a single EU country.
These are my requirements:
I want to mark each device on the map with a traffic light status indicator - so basically a dot representing each device, it'll be red/orange/green depending on its state.
The states should be updated relatively close to real time, maybe once every 10 seconds if that's reasonable? I'll be pulling state information from a queue that pushes real-time information.
Only details of devices whose states change will be included in each update (Although if required I can push states for all objects visible on the map).
At any one time, ~50k points could need to be displayed, though typically it'll be more like 10k to 15k points. Currently, there are around 30 active jobs with ~175k devices in total (I'd love to show them all, but if it's too much it's not an issue).
There are over 2.5 million points in the database (stored as GPS coordinates) and multiple jobs may be running at the same time, The maps should be able to switch between jobs, but I can limit the number of clients with access to the map, It'll mostly be visible on a display in our team area.
Detailed zoom is not currently a requirement, it'll be a full-screen map on a large display.
So far I'm looking at GeoServer as the server with OpenStreetMap, I think I need OpenLayers too. I've installed postgres and postgis. I will be coding my own service in Java, probably with Spring, but I haven't decided on the front end yet. I'm considering AngularJs and Vaadin at the moment.
So, how realistic is my proposal and what else do I need to consider?