IBM BPM, V8.0.1, All platforms > Get started with IBM BPM > Key concepts > BPEL processes and human tasks > BPEL processes overview > Invocation scenarios for BPEL processes

Factors affecting BPEL process interactions

A number of factors affect the behavior of BPEL processes in the various invocation scenarios. These include the interaction style, the type of BPEL process, the operation type, and the service endpoint resolution.

Interaction style

Operations provided by a BPEL process can be invoked synchronously or asynchronously.

Important: Reasonable response times for synchronous interactions should not exceed a few seconds. If a request-response operation that is implemented by a BPEL process does not return its results within a short time period, consider using an asynchronous interaction style to improve performance. A synchronous invocation of such operations results in blocked resources. It is also prone to timeout situations that are dependent on the system workload and are therefore non-deterministic.

BPEL process type

A BPEL process can be a microflow or a long-running process. The characteristics of each of the process types affect invocation scenarios.

WSDL operation type

SCA references and SCA interfaces are associated with a WSDL port type containing one or more operations. Operations can be one-way or request-response operations.

  • In a one-way operation, the completion of the service is not made known to the invoking client. The service execution ends with the successful invocation of the associated service.
  • In a request-response operation, the completion of the service is made known to the invoking client. The service execution ends when the result of the service is made available to the invoking client.

Service endpoint resolution

In the context of BPEL processes, an invoking client can be associated with a service that is invoked in one of the following ways:

  • An SCA wire statically associates an SCA reference to the interface of the invoked service. This is an SCA-level mechanism and it can be applied if the client, the service, or both are implemented as processes.

  • An endpoint reference (EPR) can be assigned to a BPEL partner link. The EPR determines the endpoint address of the service to be invoked using the partner link. Thus, any service can be invoked dynamically that complies with what SCA allows for dynamic service invocations, for example, web service binding, MQ JMS binding, MQ binding, or an SCA binding.

  • A BPEL process template name can be set for a partner link that is part of a BPEL process acting as an SCA client. The template name uniquely determines the name of another BPEL process that is deployed in the same server or cluster.

Invocation scenarios for BPEL processes


Related concepts:
BPEL process types
Dynamic binding between BPEL processes and services