This document discusses scaling applications by moving from synchronous to asynchronous messaging. It introduces the VETRO pattern for asynchronous integration and describes demos of three apps: App V1 uses synchronous processing on a single host; App V2 adds asynchronous messaging and multiple consumer hosts to improve scaling; App V3 runs App V2 on multiple VMs to further reduce processing time. The key lessons are that asynchronous messaging and distributing work across multiple hosts allows near-linear scaling, while synchronous single-host architectures are limited by the capacity of a single processor.