On Nov 2, 2006, at 4:37 AM, Andy Piper wrote:

At 17:21 24/10/2006, Jim Marino wrote:
Existing server integration is a nice-to-have but IMO we require a
standalone environment that can support the full range of SCA
features which is not easily done in the former.

FWIW if you want to drive adoption then I think this is more than nice-to-have. I think you need to seriously tackle the issue of the whole world not being Tuscany (see note below). This is not just the issue of providing a fully featured SCA implementation in hosted environments, but interacting with other SCA runtimes that are not Tuscany and other services that are not SCA at all. I think this probably means a much clearer separation between the parts of the Tuscany runtime that are core and those that are targeted to a particular implementation (standalone for example). Given clearer SPI access into the core I think you will have a lot more success in driving Tuscany into the real world.

I definitely agree we need to do a better job tackling the issue of there being other things besides Tuscany :-) Up to now, I have viewed most of the work we have been doing as concentrating on in-VM wiring infrastructure. As part of next steps, I think we need to address (for lack of a better term) the "service fabric". This definitely goes beyond just providing a full-featured VM-based implementation that we have been working on to-date.

 I would say there are a number of issues here:

1. The ability to deploy Tuscany on a variety of runtimes
2. The need for a standalone environment to leverage all the capabilities of SCA assembly
3. Interacting with non-SCA services
4. Better APIs/SPIs into Tuscany
5. Support for a service fabric/network or "SCA system"

1-4 basically involve dealing with the in-VM wiring infrastructure that we have today. For example, (1) embedding Tuscany in Tomcat, (2) providing a full-featured SCA standalone environment, (3) increasing the number of supported bindings, and (4) management/extensions, etc.

We still have a lot of work in the above areas to do. However, for me the real benefits of Tuscany will come to the fore when we provide capabilities that allow us to support service networks. I was viewing this as the ability to describe a logical service topology (services and their dependencies, SLAs, policies, qualities of service) and have runtime infrastructure that is able to provision and manage it. A key characteristic of these networks will be that while there is a unified logical topology, their physical manifestations will be heterogeneous. For example, a service network could be deployed across Tomcat instances, WAS clusters, WLS clusters, a Tuscany standalone container, even potentially Microsoft WCF. In some instances, the Tuscany in-VM wiring infrastructure may not be present. In this case, a deployment agent would be responsible for provisioning artifacts to a particular runtime. The job of Tuscany will be to provide the fabric that ties this all together and constitutes an "SCA system".



Yes this will likely entail some type of service discovery. I've been
looking at zeroconf and perhaps UPnP as ways of doing this (support
should be pluggable) and when I have a better idea I will post a
write-up to the list.

The key here is pluggable. Any clustering infrastructure does this and to date they are all different (e.g. WebLogic, Geronmo, Active MQ, JBoss, WAS), datacenter managers will not thank you for more :)
Agreed that most of what we should do needs to be pluggable. However, I was viewing "service discovery" as something distinct from clustering. If the SCA system mentioned above is itself a composite, then it could have various services such as deployers and provisioners. There may be particular composites deployed in the SCA system that run, for example, on an app server cluster and services within those composites may use the clustering facilities provided by that infrastructure. At the higher level of the SCA system, we need a discovery mechanism that may work across a variety of runtimes as a way for the SCA system to "auto-constitute" itself.

It might also be worth looking at ActiveCluster since it does something similar here (I think it may use Zeroconf anyway), although I have to say that if I had my way everyone would use UPnP.

Do you think UPnP is better direction to go? I liked Zeroconf because of its simplicity and support for discovery beyond the local link but I don't have any strong opinion either way.


Although don't you actually need something a bit higher level? E.g. UDDI or AD or something that allows you to publish all of the associated meta data as well.

I definitely think we need a metadata representation of the SCA system/service network. I was imagining that would be done by other services which could be segmented to handle particular areas of the system. I'm not sure UDDI is the way to go as it may not capture the relationships we need to but it is something we should look at.

There are a number of us interested in these areas so it would be good for people to just post their ideas and see where they take us...

Jim

My $0.02

andy

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



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

Reply via email to