Have FE workers cache the returned data.
DPM has three logical layers: the client layer (ACNET), the job layer, and the front-end layer. To support the @Q event (only send changing data), Andrey added a data cache to the job layer. Each job remembers the previous value it received and conditionally sends new values to the client.
In this feature request, the cache should be moved to the front-end layer.
- The data change test would only be done once instead of in each job (since jobs share data acquisition.)
- When the "once immediate" flag is true (where a data value is immediately returned before the period times-out), rather than sending a one-shot request to the front-end, we can simply return the previous cached value.
- The client info, in the front-end process, needs to add a flag to see if it was using the @Q event.