On 8 Aug 2016, at 23:00, Jay Shaughnessy wrote:
* No Publishing
o Just query metrics for the data needed for alerting (or whatever
other external use we may have for the data)
o This is essentially a polling approach with frequent polling
The poll frequency certainly defines the latency and a good balance
would need to be found.
Also in this case metrics would need to make sure that the values to
be queried are still in some sort of cache, as otherwise each query
would hit Cassandra for stuff that "was present a moment ago".
* Demand Publishing
o The "just tell me what movie you want to see" approach
o Let clients request the metric ids it wants published to the bus
I prefer this approach. The metrics to be published could be kept
in a HashSet (on metrics-side of the bus), so checking should be
very quick.
Another thought: as we are not (longer) in a situation where we
want to mix and match components, but rather have a fixed
set of combinations. Should we try to investigate if a more direct
coupling via CDI instead of the Bus would also help performance-wise?
Pavol did some work in that area for his datamining which could be
used as starting point.