The Async Processing Pattern defers resource-intensive operations from synchronous business rules to asynchronous execution contexts to prevent transaction timeouts and improve user experience. When users perform actions that trigger complex calculations, bulk record updates, or external API calls, executing these operations synchronously can cause database transaction timeouts and poor performance.
This pattern works by capturing the necessary context in the synchronous transaction, then triggering asynchronous processing through events, scheduled jobs, or Flow Designer. The heavy lifting happens in the background while users can continue working immediately. Progress can be tracked through status fields or notifications.
The pattern maintains data integrity by clearly separating the triggering action from the processing logic, allowing the system to handle failures gracefully and provide appropriate feedback to users about the status of their requested operations.