By Phil Coulthard

When you develop advanced IBM® Business Process Manager (BPM) applications using IBM Integration Designer, use caution when you invoke an asynchronous component or import using a synchronous invocation style.

Invoking an asynchronous component or import using a synchronous invocation style causes the infrastructure underneath to switch from synchronous to asynchronous, often with unintended consequences including a new transaction boundary, use of threads to wait on the asynchronous response, and specific retry behavior if the invocation fails. This now infamous “Sync Over Async” situation is considered an anti-pattern because of the issues it can cause.

Follow the instructions in Synchronous over asynchronous invocation.

Applicable editions: Advanced

Applicable releases: All

Source: IBM

Learn more:

    2 responses to “Good practice – Use the sync-over-async invocation pattern with caution”

    1. Hi, I am having all problems because of this anti pattern i.e.
      Lack of transaction propagation
      Multiple retries that result in multiple invocations of the same service
      Time outs when the default wait time for invocations is exceeded
      Blocked threads and thread pool depletion, which are caused when a thread is allocated for each asynchronous call and waits for a response.
      How can i resolved these issue in our code.

    Leave a Reply

    Your email address will not be published.