Asynchronous processing

The term asynchronous processing refers to any strategy in which the processing of some tasks does [not block] the processing of other tasks.

Asynchronous processing may be implemented within a monolith using concurrency and parallelism (ie. asynchronous programming), or by passing asynchronous messages between programs running on multiple systems.

Asynchronous processing is the foundation of reactive programming and message-driven architecture, and is widely used in distributed software to improve performance and scalability.