Folks,

Jean-Sebastien Delfino wrote:
<snip>

That was the intention :) a node would be:

<component name="myNode">
  <implementation.node composite="my:composite"/>
</component>

You could also extend the idea to do:

<component name="myNode">
  <service name="xyz">
    <binding.abc...>
  </service>
  <implementation.node composite="my:composite"/>
</component>

where the <service> could represent:
- technical services offered to manage the node
- or a description of the business services offered by the composite loaded into the node (reflected from the composite)

I think that it would be best to have implementation.node offer a set of services which relate to its activities as a node (ie node management) and NOT the business services offered by the artifacts deployed onto the node.


(I'm not sure which way to go, would be good to explore both, but that was the general idea)

and where my:composite could <include> other composites

(if you decided to load multiple composites into the node).

I'm not convinced that the domain needs to track which contribution has been loaded into each node, as it can be deducted from the composites.

I think that it is valuable to consider a node having a service which returns a list of the artifacts running on that node.

There is a need also to bridge between the Domain configuration and the artifacts on the node.

The discussion above leads me to think that only "whole composites" are deployed to a node. In general, this should not be the case. Consider a composite containing both a Java implementation and a C++ implementation (ie 2 components). I'd not expect these to get deployed on the same node, but rather be deployed to 2 separate nodes.

Describing this kind of deployment is going to be tricky, simply as any one node will only have a partial description of what is running. Perhaps this would be done by the node reporting that it is running a component with composite X, where all "non local" components are declared specially, with the actual location of these components is described ( <implementation.remote node="nodeURL" /> perhaps)


Yours,  Mike.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to