|
From: The
challenge that's out there is how to facilitate reuse of logic, when the
technologies that allow the logic to be reused all have pros and cons
associated with them, making them only suitable for certain contexts.
Everyone agrees that services should be coarse grained. Web Services are
a good fit for this, because in the grand scheme of things, the overhead of the
SOAP processing has a negligible effect on the overall response time desired by
the consumer. The problem is that granularity is a relative
measurement. The same piece of logic may be the only piece of business
processing required by one consumer, whereas another consumer may be using that
logic as part of a composite service. In the latter case, the logic is
more fine-grained within the context of the problem. As a result, Web
Services may not be as suitable for this situation. >>> As stated in my last post responding to Jeff,
there is a hint that reuse is the primary goal for SCA, but the communications
presented to date do not demonstrate to me that this specification is going in
the right direction. Frankly, I wish Webmethods would contribute some of their
IP to the open source community. They’ve solved this problem very
elegantly in their integration tool. It’s been awhile since I’ve
seen the product, but in the older incarnations you could develop services in a
number of different languages and expose them to their flow language, which
would allow you to wire them together into an aggregate service. BPEL has some
aspects of this capability, but perhaps not enough. At XMLSolutions, back in
2000, we developed our own XML language to wire together or chain URLs and it
was very powerful. I believe we need to be careful not to develop standards for
the sake of developing standards. Much of SCA can be done with a tool and
perhaps it should stay in the tools. If SCA wants to be an Eclipse standard,
then great, good on ya! If it wants to be the de facto way we describe aggregate
services, I’m not a fan at this time. However, if anyone knows of a
simple, open source tool that will allow me to simply aggregate Web Services
together without a lot of overhead, please let me know. This
problem isn't new. In the J2EE space, local EJBs were created to
accomodate this. Even prior to that, most app servers would optimize
invocations that were running within the same JVM, minimizing the
overhead. What I've heard about WCF does this as well. At
development time, we get the benefits of WSDL, SOAP, etc., but at runtime, the
VMs can optimize the communication to minimize the overhead. When I saw
the spec's title, I was interested whether this was something that was going to
try to tackle this problem. Is it? Or are we still in a wait and
see mode. Any other comments on this dilemma? I'd love to
hear how others are handling it. Todd Biske
YAHOO! GROUPS LINKS
|
Title: Dave & JP on SCA
