Published on


Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

  1. 1. High Availability / Load Balancing & Disaster Recovery 7/14/2013 Waizer Inc - Architecture
  2. 2. 7/14/2013 Waizer Inc - Architecture
  3. 3. 7/14/2013 Waizer Inc - Architecture
  4. 4. Web Application Architecture: • DNS Routing (Latency Based) • Load Balancer solution to distribute http requests to multiple web servers • Application layer (Multiple web servers running Apache or NGINX) • Database layer (MySQL master-slave scheme) • Storage layer (e.g., php / js, etc) • Content Delivery Network for fast delivery of static files to users across the globe • Monitoring / Alerting Solutions 7/14/2013 Waizer Inc - Architecture
  5. 5. Latency based DNS Routing 7/14/2013 Waizer Inc - Architecture
  6. 6. Latency based DNS Routing • Amazon Route 53 is a highly available and scalable Domain Name System (DNS) web service • With Amazon Route 53’s Latency Based Routing (LBR) feature, we can have instances in several AWS regions and have requests from your end-users automatically routed to the region with the lowest latency. • R53 is fast, easy to use, and cost-effective. It answers DNS queries with low latency by using a global network of DNS servers. Queries for your domain are automatically routed to the nearest DNS server, and thus answered with the best possible performance 7/14/2013 Waizer Inc - Architecture
  7. 7. Scalable and load-balanced Application / Web server layer 7/14/2013 Waizer Inc - Architecture
  8. 8. Scalable and load-balanced Application / Web server Layer • Elastic Load Balancing automatically distributes incoming application traffic across multiple Amazon EC2 instances. It enables you to achieve even greater fault tolerance in your applications, seamlessly providing the amount of load balancing capacity needed in response to incoming application traffic. • Auto Scaling allows you to scale your Amazon EC2 capacity up or down automatically according to conditions you define. With Auto Scaling, you can ensure that the number of Amazon EC2 instances you’re using increases seamlessly during demand spikes to maintain performance, and decreases automatically during demand lulls to minimize costs 7/14/2013 Waizer Inc - Architecture
  9. 9. Replicated Database Layer 7/14/2013 Waizer Inc - Architecture
  10. 10. Replicated Database Layer • Amazon Relational Database Service (Amazon RDS) is a web service that makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while managing time-consuming database administration task. • Amazon RDS makes it easy to use replication to enhance availability and reliability for production workloads. • RDS for MySQL also enables you to scale out beyond the capacity of a single database deployment for read- heavy database workloads. 7/14/2013 Waizer Inc - Architecture
  11. 11. Storage Layer (EBS, S3, Glacier) 7/14/2013 Waizer Inc - Architecture
  12. 12. Storage Layer (EBS, S3) • Amazon Elastic Block Store (EBS) provides block level storage volumes for use with Amazon EC2 instances. Amazon EBS volumes are network-attached, and persist independently from the life of an instance. Amazon EBS provides highly available, highly reliable, predictable storage volumes that can be attached to a running Amazon EC2 instance. • Amazon S3 (Simple Storage Service) is an online file storage web service offered by Amazon Web Services, S3's design aims to provide scalability, high availability, and low latency at commodity costs. 7/14/2013 Waizer Inc - Architecture
  13. 13. CDN Implementation 7/14/2013 Waizer Inc - Architecture
  14. 14. CDN Implementation • Amazon CloudFront is a web service for content delivery. It is an easy way to distribute content to end users with low latency, high data transfer speeds, and no commitments. • Amazon CloudFront can be used to deliver your entire website, including dynamic, static and streaming content using a global network of edge locations. Requests for your content are automatically routed to the nearest edge location, so content is delivered with the best possible performance. 7/14/2013 Waizer Inc - Architecture
  15. 15. Monitoring and Alerting 7/14/2013 Waizer Inc - Architecture
  16. 16. Monitoring and Alerting • CloudWatch provides monitoring for AWS cloud resources and the applications customers run on AWS. Developers and system administrators can use it to collect and track metrics, gain insight, and react immediately to keep their applications and businesses running smoothly. Amazon CloudWatch monitors AWS resources such as Amazon EC2 and Amazon RDS DB instances, and can also monitor custom metrics generated by a customer’s applications and services • CloudWatch enables you to monitor your AWS resources in real- time, including Amazon EC2 instances, Amazon EBS volumes, Elastic Load Balancers, and Amazon RDS DB instances. Metrics such as CPU utilization, latency, and request counts are provided automatically for these AWS resources 7/14/2013 Waizer Inc - Architecture