aws summit tel aviv - startup track - architecting for high availability

Download AWS Summit Tel Aviv - Startup Track - Architecting for High Availability

Post on 20-Aug-2015

530 views

Category:

Technology

2 download

Embed Size (px)

TRANSCRIPT

  1. 1. AWS Summit 2013 Tel Aviv Oct 16 Tel Aviv, IsraelARCHITECTING FOR HIGH AVAILABILITY Alex Sinner Solutions Architect, Amazon Web Services
  2. 2. LETS BUILD A ________ WEB APPLICATION
  3. 3. LETS BUILD A HIGHLY AVAILABLE ________ WEB APPLICATION
  4. 4. LETS BUILD A HIGHLY AVAILABLE AND SCALABLE ________ WEB APPLICATION
  5. 5. LETS BUILD A HIGHLY AVAILABLE, SCALABLE, AND RESILIENT ________ WEB APPLICATION
  6. 6. AWS BUILDING BLOCKS Inherently Fault-Tolerant Services Amazon S3 Amazon DynamoDB Amazon CloudFront Amazon SWF Amazon SQS Amazon SNS Amazon SES Amazon Route53 Elastic Load Balancing AWS IAM AWS Elastic Beanstalk Amazon ElastiCache Amazon EMR Amazon Redshift Amazon CloudSearchFault-Tolerant with the right architecture Amazon EC2Amazon EBSAmazon RDSAmazon VPC
  7. 7. 1.DESIGN FOR FAILURE2.USE MULTIPLE AZs3.BUILD FOR SCALE4.DECOUPLE COMPONENTS
  8. 8. Everything fails all the time Werner Vogels CTO of Amazon
  9. 9. YOUR GOAL APPLICATIONS SHOULD CONTINUE TO FUNCTION EVEN IF THE UNDERLYING PHYSICAL HARDWARE FAILS OR IS REMOVED OR REPLACED
  10. 10. #1DESIGN FOR FAILURE
  11. 11. AVOID SINGLE POINTS OF FAILUREASSUME EVERYTHING FAILS, AND WORK BACKWARDS
  12. 12. AVOID SINGLE POINTS OF FAILUREASSUME EVERYTHING FAILS, AND WORK BACKWARDS
  13. 13. HEALTH CHECKS
  14. 14. #2USE MULTIPLE AVAILABILITY ZONES
  15. 15. US-WEST (N. California)EU-WEST (Ireland) GOV CLOUDASIA PAC (Tokyo)US-EAST (Virginia)ASIA PAC (Sidney) US-WEST (Oregon)ASIA PAC (Singapore) SOUTH AMERICA (Sao Paulo)
  16. 16. AMAZON RDSMULTI-AZ
  17. 17. #3BUILD FOR SCALE
  18. 18. AMAZON CLOUDWATCH MONITORING FOR AWS RESOURCES
  19. 19. AUTO SCALING SCALE UP/DOWN EC2 CAPACITY
  20. 20. HEALTH CHECKS+ AUTO SCALING
  21. 21. HEALTH CHECKS+ AUTO SCALING =SELF-HEALING
  22. 22. WalkMe Architecture for High Availability Copyright 2013 WalkMe Inc. - Confidential
  23. 23. The WalkMe Platform One of a kind Platform to guide and engage prospects, customers, employees or partners through any Web experience WalkMe Reduces Complexity to Empower Advanced Selling, Support , training and improved user experience Using WalkMe increases conversion rates, reduces support costs, accelerates training and improves customer experience No integration or changes to the underlying website required. Copyright 2013 WalkMe Inc. - Confidential
  24. 24. Introducing the Holistic Approach to Automated Engagement AnnouncementsTask Listall or groupsOn Board new Users Introduce new versionscheduled maintenance sale on shirts happy 4th of JulyLaunchers & PermalinksPromotionBoost the effectiveness of your existing FAQ, chat and social supportPersonalized happy b-day top up bag for your camera?Surveys Pinpointed feedback right on timeAnalytics & Goals Straight forward measurement and improvement of critical pathsOnline SupportEmployee TrainingSearch Segmented Display Right people Right timeAdvanced Online SellingPinpointed to site and any other relevant resource (such as help desk)Improved User ExperienceOnboarding
  25. 25. Selected CustomersAnd many more
  26. 26. The Basics i.WalkMe customer creates WalkThrus using the WalkMe Editor.ii. WalkMe customer adds the WalkMe JavaScript code to his website. iii. WalkMe customer publishes the WalkThrus to his users. iv. Our customers users gets WalkMe when they surf the website. v. Our customer can access WalkMe dashboards to view usage analytics.
  27. 27. Challenges Maximum availability for client side experience (100%) Low latency for fetching the WalkMe files Very high traffic volume from our customers users (over 1B requests a month) Analyzing billions of records for WalkMe analytics
  28. 28. Evolution Phase 1Problems: Low availability High latency Hard to scale Database availability
  29. 29. Evolution Phase 2Solution: Using AWS CloudFront to host the static files. Problems: High volume of analytics causes a scaling issues and availability Database availability
  30. 30. Evolution Phase 3Solution: Adding AWS RDS Multi AZ Adding AWS BeanstalkNew Challenge: Collection of billions of records for BigData analytics (RDS is a bottleneck)
  31. 31. Evolution Phase 4Solution: Analytics BigData requests are sent to CloudFront. Analyzing CloudFront logs using Hadoop.
  32. 32. SolutionThank You
  33. 33. 1.DESIGN FOR FAILURE2.USE MULTIPLE AZs3.BUILD FOR SCALE4.DECOUPLE COMPONENTS
  34. 34. #4DECOUPLE COMPONENTS
  35. 35. BUILD LOOSELY COUPLED SYSTEMS The looser they are coupled, the bigger they scale, the more fault tolerant they get
  36. 36. UPLOADANALYZEREPORT& NOTIFY
  37. 37. AMAZON SQS SIMPLE QUEUE SERVICE
  38. 38. UPLOADANALYZEREPORT& NOTIFY
  39. 39. UPLOADANALYZEREPORT& NOTIFY
  40. 40. UPLOADREPORT& NOTIFY
  41. 41. UPLOADANALYZEREPORT& NOTIFY
  42. 42. ARCHITECTURE DESIGN PATTERN
  43. 43. SQS VISIBILITY TIMEOUT
  44. 44. BUFFERING
  45. 45. CLOUDWATCH METRICS FOR AMAZON SQS+ AUTO SCALING
  46. 46. 1.DESIGN FOR FAILURE2.USE MULTIPLE AZs3.BUILD FOR SCALE4.DECOUPLE COMPONENTS
  47. 47. YOUR GOAL APPLICATIONS SHOULD CONTINUE TO FUNCTION EVEN IF THE UNDERLYING PHYSICAL HARDWARE FAILS OR IS REMOVED OR REPLACED
  48. 48. AWS ARCHITECTURE CENTER http://aws.amazon.com/architectureAWS TECHNICAL ARTICLES http://aws.amazon.com/articlesAWS BLOG http://aws.typepad.comAWS PODCAST http://aws.amazon.com/podcast
  49. 49. THANK YOU!