Search This Blog

Monday, October 15, 2007

Develop Asynchronous Web Services with Axis2

This article gives you an overview of different patterns for
asynchronous scenarios in Web services and provides insight into how
to implement them with Apache Axis2. When first introduced as a way
to do application development, Web services implementations supported
only synchronous invocations for request-response interactions
(synchronous in this article implies processing both request and
response in the same thread of execution). But when more and more
applications adopted Web services to expose functionalities and client
applications were designed to interact with Web services, mere
synchronous invocations were seen as bottlenecks. This is because some
Web services implementations take a considerable amount of time to
respond to requests due to various reasons inside the service
implementation. For example, if a Web service requires human intervention
or batch processing at some point, the Web service might take days to
reach an outcome. These delays also caused some of the transport
mechanisms to time out. With the evolution of Web services development,
eventually some SOAP stacks tried to emulate asynchronous invocations
on top of synchronous capabilities. Even though those efforts gave a
sense of asynchronous invocations, they couldn't provide full and real
functionality. Apache Axis2, the open source Web services engine from
Apache Software Foundation, provides first-class support for asynchronous
Web services invocations and implementation. Axis2 has two mechanisms
to provide asynchronicity in the client side and one mechanism in the
server side. More Information See also Apache Axis2 (Java version): Click Here

No comments: