Soru

Zorluk: OrtaOptimizing Compute and Storage Performance

A media processing platform uses Amazon EC2 instances in an Auto Scaling group to transcode videos. The transcoder fleet retrieves raw video segments from an Amazon S3 bucket and updates metadata about the transcoding progress in an Amazon RDS for PostgreSQL database configured in a Multi-AZ deployment. During peak processing windows, a solutions architect identifies the following bottlenecks:

1. The S3 bucket experiences occasional HTTP 503 (Slow Down) errors due to a high volume of concurrent GET requests for the same popular raw video segments.
2. The EC2 instances, currently running on m6g.2xlarge instances, suffer from high CPU utilization and severe disk write queues when writing large temporary transcoded segments to their EBS gp3 boot volumes.
3. The RDS database CPU utilization spikes due to a large volume of read queries checking the status of transcoding tasks.

Which combination of actions will resolve these performance bottlenecks? (Select TWO.)

  1. Replace the m6g.2xlarge instances with c6gd.2xlarge instances, and configure the application to write the temporary transcoded segments to the local NVMe instance store volumes.Cevap
  2. Deploy an Amazon CloudFront distribution with the Amazon S3 bucket as the origin to cache the raw video segments, and modify the application to retrieve the segments through the CloudFront edge locations.Cevap
  3. C
    Direct the read queries checking transcoding progress to the standby instance of the RDS PostgreSQL Multi-AZ deployment to distribute the database read load.
  4. D
    Deploy an Application Load Balancer (ALB) in front of the S3 bucket, and request AWS Support to pre-warm the ALB before peak windows to handle the rate of GET requests.
  5. E
    Configure Amazon ElastiCache for Memcached to replicate and persist the transcoding progress data across multiple Availability Zones to offload the RDS database.

Cevap

Replace the m6g.2xlarge instances with c6gd.2xlarge instances to use local NVMe instance store volumes for temporary files, and deploy an Amazon CloudFront distribution in front of S3 to cache the raw video segments.
Replacing the instances with c6gd.2xlarge instances optimizes compute-heavy workloads and leverages high-speed local NVMe instance store volumes to bypass EBS gp3 bottleneck limitations. Additionally, caching raw segments using Amazon CloudFront eliminates S3 HTTP 503 errors by preventing excessive direct request rates to the origin bucket.

Adım Adım Çözüm

1
Analyze the EC2 compute and storage bottleneck.
Transcoding is a CPU-intensive operation, and writing temporary files to EBS gp3 boot volumes causes high write queue lengths. Switching to c6gd (compute-optimized with local NVMe SSDs) addresses both bottlenecks by offering faster CPU and local NVMe storage for scratch data.
Resolves local storage write queue limits and improves CPU processing efficiency.
2
Analyze the S3 throttling issue.
The HTTP 503 (Slow Down) error indicates S3 request limits per prefix have been exceeded due to redundant downloads of popular video segments. Introducing CloudFront to cache these segments reduces the S3 request load.
Prevents S3 rate limiting by serving popular content from edge locations.
3
Evaluate database scaling options and eliminate invalid choices.
Directing queries to an RDS standby instance is not possible because standard RDS Multi-AZ standbys are passive. Using Memcached for persistent replication is invalid as Memcached does not support persistence or replication.
Eliminates configurations that violate AWS database design constraints.

Anahtar Kavram

Optimizing compute, scratch disk, and S3 request performance by using instance store volumes and CDN caching.
Bu soruyu puanla