Guaranteed Delivery and Clustering
Guaranteed delivery ensures one-time execution of services by guaranteeing the following:
Requests from the client to execute services are delivered to the server.
Services are executed once, and only once.
Responses from the execution of services are delivered to the client.
Guaranteed delivery is useful with or without clustering. If you are not using clustering, guaranteed delivery makes sure a client resubmits a service request until it succeeds and a response is returned. Guaranteed delivery also makes sure the service executes only once. For example, if the network connection between the client and the webMethods Integration Server fails after execution but before the response is successfully redirected to the client, the service might be executed twice. Guaranteed delivery prevents this from happening.
With clustering, if the server on which the service is running becomes unavailable, the client retries the service on another server in the cluster. If the request fails against all servers in the cluster, you must use guaranteed delivery to guarantee execution. As in an unclustered environment, you must use guaranteed delivery to prevent a service from executing more than once.
For more information about guaranteed delivery, refer to webMethods Integration Server Administrator’s Guide and the Guaranteed Delivery Developer’s Guide.