Modify jbossweb metrics to use service provider spi, instead of jmx
-------------------------------------------------------------------
Key: MODCLUSTER-151
URL:
https://jira.jboss.org/jira/browse/MODCLUSTER-151
Project: mod_cluster
Issue Type: Feature Request
Affects Versions: 1.1.0.CR1
Reporter: Paul Ferraro
Assignee: Paul Ferraro
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.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira