WAS v8.5 > WebSphere applications > Web services > WS-ReliableMessagingWS-ReliableMessaging - How it works
WebSphere Application Server uses WS-ReliableMessaging as part of the transport layer for SOAP over HTTP messages. The message exchange patterns supported at the API layer are one-way "fire and forget," or two-way request and reply.
The reliability is provided by reliable messaging middleware that sits between the web service requester and the web service provider. This middleware layer is shown beneath the dotted line in the following diagram, and includes the reliable messaging source and the reliable messaging destination.
When using WS-ReliableMessaging with a two-way programming API, if the requesting application fails and is restarted it will not receive its reply message. In this model, WS-ReliableMessaging is being used to protect from network failures only. Moreover:
- Client-side retransmissions only start after the client starts sending new messages to the service (this is the situation for both one-way and two-way operations).
- Two-way operations that resume cannot drive the response message back to the client application; the message only gets back as far as the inbound sequence on the client.
Figure 1. The interactions used to exchange web services messages reliably.
In the previous diagram, the application source invokes a web service. The sequence of interactions is as follows:
- The invocation is passed to the reliable messaging source.
- The reliable messaging source stores the message and then returns control to the application.
- The reliable messaging source sends the message to the reliable messaging destination.
- After the reliable messaging destination receives the message, it stores it locally and sends an acknowledgement message back to the reliable messaging source.
- The reliable messaging source can now delete its copy of the message.
- The reliable messaging destination can deliver the message to the application destination at any time after it receives it from the reliable messaging source.
To configure a web service application to use WS-ReliableMessaging, you attach a policy set containing a WS-ReliableMessaging policy type. This policy type offers a range of qualities of service: managed persistent, managed non-persistent, or unmanaged non-persistent.
The managed qualities of service, managed persistent and managed non-persistent, are supported by the service integration bus. For each attachment between an application and a policy set, we can select the bus and messaging engine to use for the reliable messaging protocol state.
Related concepts:
Qualities of service for WS-ReliableMessaging
Web Services Addressing overview
Related
Add assured delivery to web services through WS-ReliableMessaging
Detecting and fixing problems with WS-ReliableMessaging