Brian Mikesell wrote:
>
>
> I'd like to get some opinions on when web services are most
> appropriate in an SOA.
>
> A little background....I've been charged with defining an enterprise
> SOA for my company. We're currently defining the best ways to
> enable legacy mainframe apps for participation in SOA. We have an
> integration architecture in place now for legacy enablement that is
> a MOM-based solution.
>
> Our environment is primarily made up of...
>
> J2EE consumers and providers
> Mainframe (CICS, IMS) and COM providers
>
> So here's my question: As we're maturing up the SOA stack
> (currently at composite services), when do we expose services as web
> services vs. jms or rmi interfaces?
>
> My thoughts are:
>
> - Use standards-based solutions where possible (eg. SOAP vs.
> proprietary message model)
> - For synchronous request/response, non-transactional, use SOAP/http
> - For synch request/response, transactional, use rmi interface
> (through an esb - app server-based)
> - For asynch, use SOAP/jms (j2ee is the strategic direction at my
> company)
Ideally, your software would be designed around an architecture that supports
Service Orientation by including concepts such as "transport", "configuration"
and "security" as things you do outside of the programming environment. This
keeps your software from being tied to a distinct wire protocol, or an
implementation thereof.
One of the key things from my perspective is to keep the wire protocol
invisible
from the application, and invisible from the clients deployment environment.
In
Java, this means always programming at the interface level, and always
establishing the used implementation at runtime. This will allow you to
optimize your implementation details over time without having to redeploy, or
wait for everyone to be ready to switch. Since you are using Java, the Java
mobile code model can be used. The visible interface from the clients
perspective doesn't have to be Java/RMI, but could be SOAP or something else as
needed.
Gregg Wonderly
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/service-orientated-architecture/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/service-orientated-architecture/join
(Yahoo! ID required)
<*> To change settings via email:
mailto:[EMAIL PROTECTED]
mailto:[EMAIL PROTECTED]
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/