Highly-available processing of an asynchronous request can be accomplished
in a single transaction. A distributed request queue receives a service
request from a client application or application view client. A service
processor is deployed on each node of a cluster containing the
distributed request queue. A service processor pulls the service request
from the request queue and invokes the service for the request, such as
to an enterprise information system. If that service processor fails,
another service processor in the cluster can service the request. The
service processor receives a service response from the invoked service
and forwards the service response to a distributed response queue. The
distributed response queue holds the service response until the response
is retrieved for the client application.