Standby pools for Virtual Machine Scale Sets with flexible orchestration enables you to increase scaling performance by creating a pool of pre-provisioned virtual machines from which the scale set can draw from when scaling out.
Standby pools reduce the time to scale out by performing various initialization steps such as installing applications/ software or loading large amounts of data. These initialization steps are performed on the virtual machines in the standby pool before to being put into the scale set.
The number of virtual machines in a standby pool is calculated by the max ready capacity of the pool minus the virtual machines currently deployed in the scale set. When your scale set scales back down, the instances are deleted from your scale set based on the scale-in policy you have configured and your standby pool will refill to meet the max ready capacity configured.
Virtual machine instances in the standby pool can be kept in a running or a deallocated state. Using virtual machines in a running state is recommended when latency and reliability requirements are strict. Deallocated virtual machines are shut down and keep any associated data disks, NICs, and static IPs. Using a standby pool with virtual machines in the deallocated state is a great way to reduce the cost while keeping your scale-out times fast.
Learn more about Standby pools for Virtual Machine Scale Sets