Your instance type requirements, budget requirements, and application design will determine how to apply the best practices for your application. Here are a few recommended best practices:

Be flexible about instance types. Test your application on different instance types when possible. Because prices fluctuate independently for each instance type in an Availability Zone, you can often get more compute capacity for the same price when you have instance type flexibility. Request all instance types that meet your requirements to further reduce costs and improve application performance. Spot Fleets enable you to request on multiple instance types simultaneously.

Choose pools where prices haven't changed much. Because prices adjust based on long term demand, popular instance types (such as recently launched instance families), tend to have more price adjustments. Therefore, picking older generation instance types which are less popular, tend to result in lower costs and fewer interruptions. Similarly, the same instance type in different Availability Zones can have different prices.

Amazon EC2 Spot Instances enable you to use spare EC2 computing capacity, capacity that is often 90% less than on-demand prices. Watch video to learn how to effectively harness Spot Instances for production workloads.

Watch this video to learn how FINRA saved up to 50% from its on premises solution, increased elasticity, and accelerated reprocessing requests (from months to days) by using Amazon EC2 Spot instances and Apache Spark on Amazon EMR.

Encirca Services by DuPont Pioneer partners with farmers in the field to help them deliver optimal crop yields. Watch and learn how they built a cloud based collaborative platform for farmers, leveraging AWS Step Functions, Amazon Elasticache, EC2 Spot Fleet and more to simulate crop growth and manage soil nitrogen levels.