Search for Well Architected Advice
< All Topics
Print

Select the best compute options for your workload

Selecting the most appropriate compute option for your workload allows you to improve performance, reduce unnecessary infrastructure costs, and lower the operational efforts required to maintain your workload. The optimal choice hinges on various factors, including application design, usage patterns, and assigned configurations.

Best Practices

  • Evaluate Application Requirements: Assess the specific needs of your application, including CPU, memory, and storage requirements. This allows you to match workloads with compute options that provide optimal resource allocation, thereby enhancing performance efficiency.
  • Utilize Auto-Scaling: Implement auto-scaling to adjust the amount of compute resources based on real-time demand. This minimizes costs while ensuring that the performance meets user expectations, especially during peak usage periods.

Supporting Questions

  • Have you analyzed the performance metrics of your current compute resources?
  • Do you regularly review whether your workload matches the compute resources you have selected?

Roles and Responsibilities

  • Cloud Architect: Responsible for assessing application requirements and designing the architecture to match the selected compute resources. They ensure the optimal compute choices align with business goals and performance standards.
  • DevOps Engineer: Handles the deployment and operational maintenance of compute resources. They should continuously monitor performance and scaling needs to ensure availability and efficiency.

Artifacts

  • Performance Monitoring Reports: Documentation and reports that track the performance metrics of compute resources over time, helping teams analyze effectiveness and make informed adjustments.
  • Infrastructure as Code Templates: Templates that define the infrastructure resources needed for workloads, which enables automation in deploying and managing compute resources.

Cloud Services

AWS

  • Amazon EC2: Provides scalable compute capacity in the cloud, allowing you to select the instance type that best fits your application’s resource needs.
  • AWS Lambda: Allows you to run code without provisioning or managing servers, supporting event-driven architectures that can optimize performance and reduce costs.
  • Amazon ECS/EKS: Offers options for running containers and orchestrating microservices, which can efficiently utilize compute resources based on workload demands.

Question: How do you select and use compute resources in your workload?
Pillar: Performance Efficiency (Code: PERF)

Table of Contents