We're looking at using EC2 autoscaling to deal with spikes in load. In our case, we want to scale up instances based on an SQS queue size and then downscale with the queue size gets back under control. Each SQS message defines a potentially long-running job (sometimes up to 20 minutes each for message) that must complete before the instance can be terminated.
Our software handles the shutdown process gracefully, so issuing sudo service our app stop will wait for the app to complete before returning.
My question; when autoscaling starts scaling down it issues a terminate (which apparently is like hitting the power button), will it wait for our app to completely exit before the instance is 'powered off'?