Details
-
Bug
-
Resolution: Done
-
Major
-
1.1.0.CR1, 1.1.3.Final
-
None
-
None
Description
Currently, the jbossweb load metrics (i.e. ActiveSessionsLoadMetric, BusyConnectorsLoadMetric, RequestCountLoadMetric, ReceiveTrafficLoadMetric, SendTrafficLoadMetric) use jmx to generate their load values.
This is potentially fragile.
Instead, these load metrics should use org.jboss.mod_cluster.Engine as a load context.
This raises the issue of load value scope. Currently, load is scoped to a server. Really, this should be scoped to an engine. While server:engine is usually a 1:1 relationship, this is technically a 1:N relationship.
Suggested API change:
class LoadMetricSource<C extends LoadContext> { C createContext(Engine engine); }
Where there exists:
class EngineLoadMetricSource<EngineLoadContext> { public EngineLoadContext createContext(Engine engine) { return new EngineLoadContext(engine); } } class EngineLoadContext implements LoadContext { private final Engine engine; public EngineLoadContext(Engine engine) { this.engine = engine; } public Engine getEngine() { return this.engine; } public void close() { // Nothing to close } }
The various jbossweb load metrics would use this source.
Attachments
Issue Links
- blocks
-
AS7-1866 Update mod_cluster to 1.2.0.Final
- Closed
- is related to
-
MODCLUSTER-259 Load-demo application does not work with AS7
- Closed