openrvdas
openrvdas copied to clipboard
cache data server to serve updates asynchronously for better responsiveness
** Disclaimer - I do not claim to fully understand the inner workings of OpenRVDAS, what I'm requesting may already implemented or completely impossible to implement
The current cached data server serves websocket-connected clients with updated data from the data streams that the clients have subscribed to. The updated are provided synchronously at a default rate of 1Hz. The updates arrive regardless if the underlying data has changed since the previous update was sent.
This creates two scenarios that I feel should be avoided if possible:
- Connected clients receive "new" data even if the data hasn't changed.
- The minimum refresh interval of the client is controlled by the broadcast interval of the cache data server and not by changes in the underlying data.
Recommend refactoring the cache-data-server to send connected clients with updated data when the underlying data changes vs at a server-defined update rate.