A global payment processing company is designing a real-time fraud detection platform. The system must ingest credit card transaction events from merchant terminals worldwide, processing a baseline of write requests per second. During promotional sales, traffic instantly surges to write requests per second. The application must analyze each transaction against historical user profiles stored in a backend database with sub--millisecond latency. High-volume read queries for these profiles must scale dynamically to handle concurrent validation checks. Which architecture meets these scalability and performance requirements while minimizing operational overhead?
- Deploy a Network Load Balancer (NLB) in front of an Amazon ECS Service on AWS Fargate. Store user profiles in an Amazon Aurora PostgreSQL DB cluster, directing write traffic to the primary writer endpoint and read queries to the cluster reader endpoint. Configure Aurora Auto Scaling to dynamically adjust the number of Aurora Replicas based on CPU utilization.Cevap
- BDeploy an Application Load Balancer (ALB) in front of an Amazon ECS Service on AWS Fargate. Use Amazon RDS for PostgreSQL in a Multi-AZ deployment. Direct the application write traffic to the primary database instance and route the high-volume read queries to the Multi-AZ standby instance in the secondary Availability Zone.
- CDeploy an Application Load Balancer (ALB) to route traffic to an Amazon ECS Service on AWS Fargate. Store user profiles in an Amazon Aurora PostgreSQL DB cluster. Direct write traffic to the primary writer instance, and configure Aurora Auto Scaling to scale out the database instances. Rely on the ALB's default auto-scaling behavior to dynamically scale from the baseline to the peak flash traffic.
- DDeploy a Network Load Balancer (NLB) in front of an Amazon ECS Service on AWS Fargate. Store user profiles in a single-node Amazon RDS for PostgreSQL DB instance. Implement an Amazon ElastiCache for Memcached cluster to act as a write-through cache for the PostgreSQL database, configuring Memcached to replicate data across multiple Availability Zones to ensure high availability.
Cevap
Deploy a Network Load Balancer (NLB) in front of an Amazon ECS Service on AWS Fargate. Store user profiles in an Amazon Aurora PostgreSQL DB cluster, directing write traffic to the primary writer endpoint and read queries to the cluster reader endpoint. Configure Aurora Auto Scaling to dynamically adjust the number of Aurora Replicas based on CPU utilization.
The architecture utilizing a Network Load Balancer (NLB) and Amazon Aurora PostgreSQL with reader endpoints and Auto Scaling provides the optimal solution. The NLB natively handles instantaneous, volatile spikes of millions of requests per second without requiring pre-warming. Amazon Aurora's cluster reader endpoint load balances read queries across dynamically scaled Aurora Replicas, which scaling policies can provision automatically in response to CPU load. This ensures the backend meets sub--millisecond latency requirements under heavy write and read pressures.
Adım Adım Çözüm
Anahtar Kavram
Handling flash traffic spikes at the ingress layer using NLB, and scaling database reads horizontally using Aurora Auto Scaling and read replicas.
Tahmini Süre:3m 0s