Architecture models
Active Architecture: All components are active and work together to handle tasks, providing scalability and high availability. Example: A cluster of virtual machines balancing workload.
Active/Passive Architecture: One component is active, handling requests, while others are passive, serving as backups. The passive components take over if the active one fails. Example: A failover database system.
Active/Active Architecture: All components are active, sharing the workload and providing redundancy. If one fails, others continue processing. Example: A distributed database where each node handles data and requests.
Sharding Architecture: Data is split into smaller, manageable pieces (shards) and distributed across multiple nodes. It improves scalability and performance, commonly used in large databases. Example: A platform dividing user data into separate database shards based on region.
AWS Infrastructure
AWS Region is a geographic location where resources can be deployed, each region is designed to be isolated from other regions.
Regions can contain different services, regulatory or compliance requirements and costs can vary.
How to choose your Region:
- Compliance, governance and legal requirements.
- Proximity to customers.
- Available services in region.
- Pricing.
Every region as Availability Zone, AZ (min 3, max 6).
Each Availability Zone is made of multiple datacenters (min 2), with redundant power, network and connectivity.
AZ’s provide redundancy within a Region.
AWS Local Zones are an extension of an AWS Region designed to bring AWS services closer to end-users in specific geographic areas, offering lower-latency access to applications and data.
- makes available some selected services close to end users.
- provide high-bandwidth, secure connections to a parent AWS Region
- low latency applications in a local place
Design for High Availability
- Design for failure
- Embrace elasticity and automation
- Loosely coupled components
- Became stateless
- Use parallelism
- Security as a forethought
Solutions: Elastic Load Balancer, Auto Scaling Groups, Amazon SQS
AWS Architectures
Single Region – Single AZ
- no High availability
- global latency
Single Region – Multi AZ
- High availability
- global latency
Multi Region – Active/Passive
- one writer, many readers
- solves global latency for reads
Multi Region – Active/Active
- many writers, many readers
- no global latency