Cloud computing gives you a number of advantages, such as the ability to scale your web application or website on demand. If you have a new web application and want to use cloud computing, you might be asking yourself, "Where do I start?" Join us in this session to understand best practices for scaling your resources from zero to millions of users. We show you how to best combine different AWS services, how to make smarter decisions for architecting your application, and how to scale your infrastructure in the cloud.
3. 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.
4.
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. 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. 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
9. Components of a Web App
• Three tier architecture:
• Web Server
• App Server
• Database
• Components
• Application Compute
• Database Engine
• Storage & Delivery
10. Components of a Web App
• Three tier architecture:
• Web Server
• App Server
• Database
• Components
• Application Compute
• Database Engine
• Storage & Delivery
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. 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. 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. 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. 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. 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. 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
19. Components of a Web App
• Three tier architecture:
• Web Server
• App Server
• Database
• Components
• Application Compute
• Database Engine
• Storage & Delivery
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. 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. Components of a Web App
• Three tier architecture:
• Web Server
• App Server
• Database
• Components
• Application Compute
• Database Engine
• Storage & Delivery
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. 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. 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. • 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. 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
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. 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
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. 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. 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
53. Call To Action (Malaysia)
• Attend the official AWS Training course organized by AWS Authorized local
training partner – Iverson Associates Sdn Bhd (www.iverson.com.my).
• Join the AWS Jumpstart (2 hr) session and hear from our customers and partners
on how they enabled their teams and successfully deployed on AWS. Also stand a
chance to win free seat to the above courses.
• Point of contact – Cheryl Wong - cheryl.wong@iverson.com.my
Courses Date
Architecting on AWS 28 Feb - 2 March
System Operations on AWS 8-10 March
Developing on AWS 15-17 March
Big Data on AWS 19-21 April
Date Venue
17 Mar 2017 Iverson Associates Sdn Bhd (303330-M), Suites T113-T114, 3rd Floor, Centrepoint,
Lebuh Bandar Utama, Bandar Utama, 47800 Petaling Jaya, Selangor