On 2/29/2012 12:22 PM, Jay Shaughnessy wrote:
In [most likely] RHQ 4.4 there will be several improvements to
Availability collection and handling. One of the major changes is
/Prioritized Availability Collection/.It means plugin developers can
optimize their types to set out of box availability collection
intervals. And users can alter the interval at
template/group/resource granularities. The inherent difficulty, like
other default metric enablement/collection interval settings, is how
to decide what the settings should be.Out of box we want to be
conservative while still being useful.
There are two topics that need discussion, the built-in defaults and
how to approach the plugin-specific overrides.
_*Built-In Defaults*_
The current defaults are based on category; server types are set to 1
minute and service types to 5 minutes.This actually increases avail
checking as previously everything was 5 minutes. These defaults are
not set in stone, they are just numbers I picked.
The 1 minute server default aims to increase the avail checking on
types that are more likely to be important. This affects a small
percentage of types and so far everyone has informally agreed that
this seems like a good setting. Of course plugin descriptors can
override the default.
The 5 minute service default simply maintains the default avail scan
period from earlier versions, giving a nod to backward compatibility.
This setting can easily be debated. Increasing the default to, say 10
or 15 minutes, would give immediate performance benefit out of box.
As the majority of resources would be checked less often. This
raises a few fundamental questions: Is slow avail checking even
useful? is backward compatibility even relevant here? Is a slow
default a good idea seeing that plugins can easily override the
defaults, and users can further optimize their settings?
The more I think about it the more I like the idea of a 10 minute
Service default. This gives us a blanket performance enhancement out of
box, without, I think, much of a functional difference over a 5 minute
default. Plugin developers can override this on any types they see fit.
And of course users can then customize intervals further, any way they
see fit. In the end I would think that resources the plugin developer or
users consider critical, would be assigned intervals less than 5
minutes. I think perhaps the best scenario is a small number of
relevant resources with fairly short intervals, and the rest with larger
intervals.
Note also that availability collection can now be disabled on a type,
out of box. Which means that it will immediately be assigned the
avail of its parent. This is likely appropriate for any component
that simply returns UP in its getAvailability() implementation.
*_Plugin-specific Overrides_*
To be clear, it is a goal that our most critical plugins be optimized
out of box to better today's performance, increase avail checking for
the most important resources and lessen or disable avail checking for
less important resources. The question is, who knows what these
settings should be? How do we go about making these setting changes?
Please chime in with your thoughts.
_______________________________________________
rhq-devel mailing list
rhq-devel(a)lists.fedorahosted.org
https://fedorahosted.org/mailman/listinfo/rhq-devel