[jboss-as7-dev] Extensions in host.xml + individual server overrides

Brian Stansberry brian.stansberry at redhat.com
Fri Jan 14 11:10:46 EST 2011


Heiko,

Following up a bit here on our #jboss-as7 discussion that I had to 
leave. This is a general topic area we haven't talked about in a formal 
way for a long time, and I'd appreciate your perspective.

The only reason to have <extension/> in host.xml is if the 
HostController would need to load an extension module and interact with 
it to find out something about its subsystems.

Only reason HC would need to do that is if there were some subsystem 
info in host.xml. Only place that would logically fit would be in the 
<server/> element.

Way back in April/May/June time we thought that we might have subsystems 
expose a limited number of configuration items that could be overridden 
at the host level. Those would be limited to things that logically vary 
by host, e.g. the size of some pool might be bigger on a monster machine.

However, since then I've gotten a fair bit of user feedback that folks 
are going to want to use variables in their configurations, and set 
those variables from the command line or from the <system-property> 
elements in host.xml. So, we need to support this kind of syntax in 
domain.ml:

<pool size="${my.pool.property:10}" />

What that expression resolves to could only be determined at the server 
level.

Once we support that kind of syntax, it can really be applied to 
anything. And if you can do that, the rationale for some kind of formal 
SPI where subsystems expose a limited set of server-level overrides 
largely disappears.

And with that, the rationale for the <extension/> element in host.xml 
disappears.

-- 
Brian Stansberry
Principal Software Engineer
JBoss by Red Hat



More information about the jboss-as7-dev mailing list