Asynchronous processes foster decoupling and scalability in favor of performance.
Exchanges between applications must be asynchronous first.
Asynchronous exchanges naturally allow loose coupling, isolation and flow control (back-pressure).
Synchronous communication should only be considered when required.