A QueryStrategy would play a role in your solution ... but there is much more to it than this ... and everything depends upon application-specific factors such as
* number of active users
* variety of entity types that need to be refreshed
* interval between mandatory refresh
* when refreshes should be expected/allowed.
* whether users tend to be interested in the same information (e.g., stock prices, inventory levels) or changes in data of individual interest (e.g., purchases of Slinkies)
There are async polling approaches and push approaches (note: don't assume that push is always better!).
If the variety of entity types to track is high, you may want to create a ChangesTable and listen to that; such a table is often a by-product of change auditing.
It's a big topic - and important topic.
As is typical with such topics, there is no single answer.
If you care to elaborate (especially with respect to the listed dimensions), we may be able to offer more targeted advice.
Happy New Year!