[
https://issues.apache.org/jira/browse/KYLIN-2722?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16206826#comment-16206826
]
Zhong Yanghong commented on KYLIN-2722:
---------------------------------------
bq. The term "active reservoir" sounds a little strange, because I don't see
inactive reservoir any where. The "active" is not meaningful without the
"inactive", just like there is no good without evil.
In codahale metrics, there's already a class named {{Reservoir}}, which is used
in {{Histogram}} for just holding events with different strategies. Here,
{{ActiveReservoir}} is not only for holding events, but also flushing events to
reporters actively.
> Introduce a new measure, called active reservoir, for actively pushing
> metrics to reporters
> -------------------------------------------------------------------------------------------
>
> Key: KYLIN-2722
> URL: https://issues.apache.org/jira/browse/KYLIN-2722
> Project: Kylin
> Issue Type: Sub-task
> Reporter: Zhong Yanghong
> Assignee: Zhong Yanghong
> Attachments: APACHE-KYLIN-2722.patch
>
>
> For many existing metrics frameworks, they focus on maintaining metrics in
> memory independently for each instance. However, kylin server may consist of
> multiple instances. Thus we extend existing metrics framework by introducing
> *active reservoir* to actively push metrics to reporters which will report
> metrics of its instance to a unified storage.
> Here we introduced two *active reservoirs*. One is called
> {{BlockingReservoir}}, which will buffer the metrics. The other is called
> {{InstantReservoir}}, which owns no buffer and will directly push metrics to
> reporters.
> Generally, one *active reservoir* can push its metrics to multiple reporters
> and one reporter can only listen on one *active reservoir*.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)