Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Build a Website on AWS for Your First 10
Million Users
Steve Shirkey
Solutions Architect ASEAN
Amazon Web Services
Steve Shirkey
Solutions Architect ASEAN
Amazon Web Services
What do we expect from modern applications?
Modern Applications Expectations
• What do we expect from applications?
• Highly Availability
• Scalability
• Predictable ...
Web Services
Core Services Compute Storage Database Networking
Infrastructure RegionsAvailability Zones Edge Locations
Pla...
Web Services
Core Services Compute Storage Database Networking
Infrastructure RegionsAvailability Zones Edge Locations
Pla...
SDKs
Java Python (boto) PHP .NET Ruby Node.js
iOS Android AWS Toolkit for
Visual Studio
AWS Toolkit
for Eclipse
AWS Tools ...
Let’s start with a Web App!
Components of a Web App
• Three tier architecture:
• Web Server
• App Server
• Database
• Components
• Application Compute...
Components of a Web App
• Three tier architecture:
• Web Server
• App Server
• Database
• Components
• Application Compute...
AWS Elastic Beanstalk
• Easily deploy, monitor, and scale web
applications
• Infrastructure provisioned and managed
by EB ...
AWS Elastic Beanstalk Environment
• Two types:
• Single instance
• Load balanced, auto scalable
• Two tiers
• Web Server
•...
AWS Elastic Beanstalk Instance Configuration
Your code
HTTP server
Application server
Language interpreter
Operating syste...
Application Versioning
Saved Configurations
Allow for easy duplication for
A/B testing or non-disruptive
deployments
Appli...
Deployment Options
1. Via the AWS Management Console
2. Via Git / EB CLI
3. Via the AWS Toolkit for Eclipse and
the Visual...
Example: CLI workflow
Initial app deployment:
$ git init . $ git add .
Initialize your Git repository01 Add your code04
$ ...
Example: CLI workflow
Update your app:
Update your code01
$ git add .
$ git commit –m “v2.0”
$ eb deploy
Push the new code...
Live Demo
Components of a Web App
• Three tier architecture:
• Web Server
• App Server
• Database
• Components
• Application Compute...
Amazon RDS
Amazon RDS
• Fully managed relational database
• Automated full daily backups and 5 min
incremental point in ti...
Amazon DynamoDB
• Schemaless Data Model
• Seamless scalability
• No storage or throughput limits
• Consistent low latency ...
Components of a Web App
• Three tier architecture:
• Web Server
• App Server
• Database
• Components
• Application Compute...
Amazon S3 (Simple Storage Service)
• Scalable & fully managed object storage
• Virtually unlimited storage capacity
• Pay ...
Amazon S3 – Buckets and Objects
• Stored in Buckets
• Allows Versioning
• Access control lists and bucket policies
• AES-2...
Amazon S3 – Static Content Website
• S3 becomes your static webserver
• Amazon S3 is fully managed and
scales to millions ...
• One of the world’s leading social
sound platform
• Audio files must be transcoded and
stored in multiple formats
• Store...
Amazon CloudFront
• CDN powered by 68 edge locations
across the world
• Caches content on edge locations for
low latency
•...
Amazon S3Amazon
CloudFront
Browser
Static Website Hosting on S3 & CloudFront
Live Demo
Dr. Werner Vogels
CTO - Amazon
No server is easier to manage…
…than no server.
No server is easier to manage…
AWS Lambda
Run your code without thinking about
servers. Pay only for compute time
you consume.
Triggered through API call...
Webhooks – Integrate with other platforms
Facebook
Page AWS Lambda
Slack
Channel
Amazon
API
Gateway
Amazon
DynamoDB
Incomi...
Serverless Game Demo
Amazon
Lambda
Amazon API
Gateway
Amazon S3Amazon
CloudFront
Browser
Amazon
DynamoDB
Web Application Demo
AWS
Lambda
Browser
Amazon
DynamoDB
• Highly Available
• Scalable
• Fully Managed
• Fault Tolerant
Demo Architecture
Amazon...
OK, how about a Mobile App?
Some of the best Mobile Apps run on AWS
Ability to Scale on AWS
0
190,000
380,000
570,000
760,000
950,000
1,140,000
1,330,000
1,520,000
1,710,000
1,900,000
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 ...
1.7 Billion
swipes a day
October 2015
Ability to Scale on AWS
1.2 Trillion+
Total Swipes
October 2015
Ability to Scale on AWS
7 Petabytes
of Data Transfer per Month
October 2015
Ability to Scale on AWS
Authenticate & Sync
Authorize access
Analyze User Behavior
Store & Deliver Content
Test across
Devices
Send Push Notificat...
Amazon Mobile
Analytics
Amazon Device Farm
AWS IAM
Amazon Cognito Amazon S3 Amazon CloudFront
Amazon DynamoDB
AWS Lambda
A...
AWS Mobile Hub
• Allows to build mobile apps within
minutes
• Single integrated console to use all
AWS services for mobile...
AWS Mobile Hub
AWS Mobile Hub: Select Features
AWS Mobile Hub: Resources
AWS Mobile Hub: Code Generation
twitter.com/awsawscloudseasia
aws-asean-marketing@amazon.com
facebook.com/amazonwebservices/
youtube.com/user/AmazonWebSer...
Thank you for joining us today.
Register now for upcoming sessions for today, if you would like to
join.
https://pages.aws...
Thank you
Build a Website on AWS for Your First 10 Million Users
Build a Website on AWS for Your First 10 Million Users
Upcoming SlideShare
Loading in …5
×

Build a Website on AWS for Your First 10 Million Users

1,985 views

Published on

The AWS Workshop Series Online is a series of live webinars designed for IT professionals who are looking to leverage the AWS Cloud to build and transform their business, are new to the AWS Cloud or looking to further expand their skills and expertise. In this series, we will cover : "Build a Website on AWS for Your First 10 Million Users".

Published in: Technology

Build a Website on AWS for Your First 10 Million Users

  1. 1. Build a Website on AWS for Your First 10 Million Users Steve Shirkey Solutions Architect ASEAN Amazon Web Services
  2. 2. Steve Shirkey Solutions Architect ASEAN Amazon Web Services
  3. 3. What do we expect from modern applications?
  4. 4. Modern Applications Expectations • What do we expect from applications? • Highly Availability • Scalability • Predictable Responsiveness • Fault Tolerance • How can we achieve this? • Multiple datacenter facilities • Auto-Scalable databases • Auto-Scalable server infrastructure • Load-Balancing • etc.
  5. 5. Web Services Core Services Compute Storage Database Networking Infrastructure RegionsAvailability Zones Edge Locations Platform Services Analytics App Deployment Mobile Virtual Desktops Collaboration & Sharing App Delivery E-Mail Access Control Auditing Monitoring EncryptionSecurity Applications A P I & S D K s
  6. 6. Web Services Core Services Compute Storage Database Networking Infrastructure RegionsAvailability Zones Edge Locations Platform Services Analytics App Deployment Mobile Virtual Desktops Collaboration & Sharing App Delivery E-Mail Access Control Auditing Monitoring EncryptionSecurity Applications A P I & S D K s
  7. 7. SDKs Java Python (boto) PHP .NET Ruby Node.js iOS Android AWS Toolkit for Visual Studio AWS Toolkit for Eclipse AWS Tools for Windows PowerShell AWS CLI JavaScript
  8. 8. Let’s start with a Web App!
  9. 9. Components of a Web App • Three tier architecture: • Web Server • App Server • Database • Components • Application Compute • Database Engine • Storage & Delivery
  10. 10. Components of a Web App • Three tier architecture: • Web Server • App Server • Database • Components • Application Compute • Database Engine • Storage & Delivery
  11. 11. AWS Elastic Beanstalk • Easily deploy, monitor, and scale web applications • Infrastructure provisioned and managed by EB – you maintain complete control. • Preconfigured application containers that are easily customizable.
  12. 12. AWS Elastic Beanstalk Environment • Two types: • Single instance • Load balanced, auto scalable • Two tiers • Web Server • Worker • Configures Amazon Route 53 and provides a domain name https://yourapp.elasticbeanstalk.com
  13. 13. AWS Elastic Beanstalk Instance Configuration Your code HTTP server Application server Language interpreter Operating system Host • Each EC2 instance comes with the necessary components to run applications • No more worrying about logging into instances to install and configure your app stack Focus on building your app
  14. 14. Application Versioning Saved Configurations Allow for easy duplication for A/B testing or non-disruptive deployments Application Versions All versions are stored durably in Amazon S3. Code can also be pushed from a Git repository!
  15. 15. Deployment Options 1. Via the AWS Management Console 2. Via Git / EB CLI 3. Via the AWS Toolkit for Eclipse and the Visual Studio IDE $ git aws.push
  16. 16. Example: CLI workflow Initial app deployment: $ git init . $ git add . Initialize your Git repository01 Add your code04 $ eb init $ git commit –m “v1.0” Create your Elastic Beanstalk app02 Commit05 Follow the prompts to configure the environment 03 Create the resources and launch the application 06 $ eb create
  17. 17. Example: CLI workflow Update your app: Update your code01 $ git add . $ git commit –m “v2.0” $ eb deploy Push the new code02 Monitor the deployment progress03 $ eb status
  18. 18. Live Demo
  19. 19. Components of a Web App • Three tier architecture: • Web Server • App Server • Database • Components • Application Compute • Database Engine • Storage & Delivery
  20. 20. Amazon RDS Amazon RDS • Fully managed relational database • Automated full daily backups and 5 min incremental point in time recovery • Highly available through Multi-AZ with automatic failover to standby database • Easily create cross-region read replicas • Managed underlying storage layer with configurable IOPS performance Aurora
  21. 21. Amazon DynamoDB • Schemaless Data Model • Seamless scalability • No storage or throughput limits • Consistent low latency performance • High durability and availability • Replicated across 3 facilities DynamoDB table items attributes Fully Managed NoSQL Database Service
  22. 22. Components of a Web App • Three tier architecture: • Web Server • App Server • Database • Components • Application Compute • Database Engine • Storage & Delivery
  23. 23. Amazon S3 (Simple Storage Service) • Scalable & fully managed object storage • Virtually unlimited storage capacity • Pay only for what you use • Trillions of unique customer objects • Millions of transactions per second • Designed for 99.999999999% durability Amazon S3
  24. 24. Amazon S3 – Buckets and Objects • Stored in Buckets • Allows Versioning • Access control lists and bucket policies • AES-256 bit encryption at rest • Addressable via HTTP(S) endpoint • Ideal for static assets like images, videos, application data, backups and more
  25. 25. Amazon S3 – Static Content Website • S3 becomes your static webserver • Amazon S3 is fully managed and scales to millions of requests • Offload static content to S3 and run dynamic content on EC2 (Elastic Beanstalk)
  26. 26. • One of the world’s leading social sound platform • Audio files must be transcoded and stored in multiple formats • Stores 2.5 PBs of data • Transcoded files served from Amazon S3 Use Case: SoundCloud
  27. 27. Amazon CloudFront • CDN powered by 68 edge locations across the world • Caches content on edge locations for low latency • Allows Geo Targeting and Device Detection • Can route to different origins based on path patterns (e.g. *.jpg  S3) Amazon CloudFront
  28. 28. Amazon S3Amazon CloudFront Browser Static Website Hosting on S3 & CloudFront
  29. 29. Live Demo
  30. 30. Dr. Werner Vogels CTO - Amazon
  31. 31. No server is easier to manage…
  32. 32. …than no server. No server is easier to manage…
  33. 33. AWS Lambda Run your code without thinking about servers. Pay only for compute time you consume. Triggered through API calls or state changes in your AWS environment Scales automatically to match the incoming event rate Charged per 100ms execution time AWS Lambda
  34. 34. Webhooks – Integrate with other platforms Facebook Page AWS Lambda Slack Channel Amazon API Gateway Amazon DynamoDB Incoming Webhook Oli just posted on your page! Oli | 2016-10- 01 | Hello
  35. 35. Serverless Game Demo Amazon Lambda Amazon API Gateway Amazon S3Amazon CloudFront Browser Amazon DynamoDB
  36. 36. Web Application Demo
  37. 37. AWS Lambda Browser Amazon DynamoDB • Highly Available • Scalable • Fully Managed • Fault Tolerant Demo Architecture Amazon S3 Amazon CloudFront Amazon API Gateway
  38. 38. OK, how about a Mobile App?
  39. 39. Some of the best Mobile Apps run on AWS
  40. 40. Ability to Scale on AWS
  41. 41. 0 190,000 380,000 570,000 760,000 950,000 1,140,000 1,330,000 1,520,000 1,710,000 1,900,000 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 2012 2013 2014 2015 Matches in Tinder since Launch (in 1,000s) Ability to Scale on AWS
  42. 42. 1.7 Billion swipes a day October 2015 Ability to Scale on AWS
  43. 43. 1.2 Trillion+ Total Swipes October 2015 Ability to Scale on AWS
  44. 44. 7 Petabytes of Data Transfer per Month October 2015 Ability to Scale on AWS
  45. 45. Authenticate & Sync Authorize access Analyze User Behavior Store & Deliver Content Test across Devices Send Push Notifications Store Data Record Real-Time EventsRun Business Logic Drive User Engagement Manage users and identity providers and sync prefs across devices Securely access cloud resources Test across multiple devices and operating systems Track active users, engagement Run stateless custom code without servers Store user-generated content and deliver quickly globally Bring users back to your app by sending messages reliably Run targeted campaigns based on user behavior and track results Store and query fast NoSQL data across users and devices Collect real-time event logs and take actions quickly
  46. 46. Amazon Mobile Analytics Amazon Device Farm AWS IAM Amazon Cognito Amazon S3 Amazon CloudFront Amazon DynamoDB AWS Lambda Amazon SNS Mobile Push AWS Mobile SDK Amazon Kinesis Authenticate & Sync Authorize access Analyze User Behavior Store & Deliver Content Test across Devices Send Push Notifications Store Data Record Real-Time EventsRun Business Logic Drive User Engagement Amazon Pinpoint
  47. 47. AWS Mobile Hub • Allows to build mobile apps within minutes • Single integrated console to use all AWS services for mobile • Automatically provisions all necessary AWS services based on selected features • Automatic code generation for iOS (Objective-C / Swift) and Android • Uses AWS security best practices
  48. 48. AWS Mobile Hub
  49. 49. AWS Mobile Hub: Select Features
  50. 50. AWS Mobile Hub: Resources
  51. 51. AWS Mobile Hub: Code Generation
  52. 52. twitter.com/awsawscloudseasia aws-asean-marketing@amazon.com facebook.com/amazonwebservices/ youtube.com/user/AmazonWebServices slideshare.net/amazonwebservices Thank you for joining us today. Please Complete the Survey & Let Us Know What You Think of the webinar. And Tell Us Your interest to Receive Credit Code
  53. 53. Thank you for joining us today. Register now for upcoming sessions for today, if you would like to join. https://pages.awscloud.com/aws-workshop-online.html 1:00pm – 2:00pm (SGT) Modern Data Architectures for Business Insights at Scale 2:30pm – 3:30pm (SGT) Modern Data Architectures for Real-time Analytics and Engagement
  54. 54. Thank you

×