Skip to main content

Messaging design patterns

Communication or messaging between two systems is a basic need in enterprise software development. Multiple technologies or systems communicate to use the industry standard protocols.

Types of messaging

In general, system messaging follows one of two messaging patterns:

  • Synchronous 
  • Asynchronous  

Synchronous communication is useful when the communication is one-to-one and requires an immediate response. Synchronous communication is useful in scenarios where the business logic or running a process depends on the response or when the request fails, and the producer needs to handle the compensating actions. 

Asynchronous communication is useful for long-running services, and a process does not require an immediate response. As a result, services are decoupled from each other to isolate and distribute the running of processes, which avoids bottlenecks of service failures and inversion of control.  

Pega Platform™ supports synchronous and asynchronous messaging patterns. By default, most of the processing happens synchronously. However, Pega Platform supports the configuration of asynchronous messaging or processing. You can achieve asynchronous processing in Pega Platform by running rules or processes in parallel.

Rules run in parallel by using the concept of multithread processing. For example: In Pega Platform, you can run a call to a queue processor, and then in another thread, you can continue executing some independent business logic available in a data transform or an activity.   

Processes run in parallel by using the concept of split-for-each, split-join, and spin-off flow types. Pega Platform also supports defining parallel processes. For example, an Onboarding case type might run the processes of different departments in parallel to complete employee onboarding quickly and efficiently.

Check your knowledge with the following interaction:

This Topic is available in the following Module:

If you are having problems with your training, please review the Pega Academy Support FAQs.

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice