SlideShare a Scribd company logo
1 of 106
Download to read offline
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Automating Mother Nature
Sumin Byeon @NEXON
G A M 3 0 5
N o v e m b e r 2 7 , 2 0 1 7
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
The Beginning
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
(Unknown title) by Ivan T is licensed under CC-BY
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
“Ace bet business card 262333” by Pixabay is licensed under CC0
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AUTOMATING MOTHER NATURE
ECS
S3 SQS
ECR
Game Servers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
NEXON
• Headquartered in Seoul, South Korea
• Global offices in Japan, North America, Europe
• Specializes in online games for PC and mobile
• Services +100 titles in +190 countries
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
TODO: Insert the intro video
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
DURANGO
• Dinosaurs!
• An open-world MMORPG
• Survival, hunting, craftsmanship, farming, and collecting
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
We want to make our ecosystem
as realistic as possible
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
REALISTIC ECOSYSTEM
• Forests get destroyed by players
• Slowly replenished over time
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GROWING FOREST
(Screenshot of evolving ecosystem)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
FORMING VEGETATION
Factors to be considered:
• Temperature
• Humidity
• Fertility of soil
• Distance from water and other plants
• Biome type
• (and more)
“The distribution of vegetation types as a function of mean annual
temperature and precipitation” by Navarras is licensed under CC0
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ECOSYSTEM SIMULATOR
Determines the type and the location of plants
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
WHY NOT PLANT TREES MANUALLY?
Islands
10,000
Estimated number of trees,
shrubs, rocks, mud pits, and so on
180M
Potential slots
to put something
+2.1B
And still growing…
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
WHY USE A DEDICATED SIMULATOR?
• A lot of matrix operations and other calculations
• Cannot be handled by a single node; multiple compute nodes are employed
• Independently scale in/out Ecosystem Simulator
• Game server written in Python
(Not an ideal language for CPU-bound tasks)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
REPLENISHING WORKFLOW
Ecosystem
Simulator
Current Garden
State
Next Garden State
Game Server
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
GARDEN STATE
Tile coordinate Type of plant
Mango tree
Reed
Heliconia
x y entity_type
325 262 12852
462 53 13360
… … …
128 509 11559
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Tile
284, 136
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
THE ARCHITECTURE
ECS
S3 SQS
ECR
Game Servers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
PRODUCTION ENVIRONMENT
• Multiple machines running Ecosystem Simulator
• Software deployment can be tricky sometimes
• Operating system, libraries, and frameworks versions
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
NEED FOR SOLID BASE SYSTEM
(Some reliable base system)
Ecosystem
Simulator
Ecosystem
Simulator
Ecosystem
Simulator
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SOLUTION: DOCKER
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON EC2 CONTAINER SERVICE (ECS)
• Highly scalable, high performance container management service
• Managed cluster of Amazon EC2 instances
• Container deployment, scheduling, monitoring
• Cluster configuration, management
• Requires provisioning of underlying compute resources
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
PULLING FROM AMAZON ECR
ECS ECR
I need an Ecosystem
Simulator Docker image
Okay
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON EC2 CONTAINER REGISTRY (ECR)
• Fully-managed Docker container registry
• Similar to Docker Hub
• IAM based access control
• No additional cost; pay for S3 storage and data transfer usage
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
REGIONAL OFFLOADING
• Initially thought the Amazon ECR must be in the same region as the Amazon
ECS (That was not the case!)
• Amazon ECR was only available in Virginia when we started working on this
• Game servers in Tokyo, Amazon ECS cluster in Virginia
• Virginia has 22% lower Amazon EC2 prices than Tokyo
• Ended up saving some cost in computing resources
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
COST SAVINGS
With on-demand instances, beta test in September 2017
$9,100/mo
Tokyo
$7,300/mo
Virginia
20%
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
INTER-REGIONAL DATA TRANSFER
$90/TB
$90,000/PB
$0.09 for each GB transferred
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
DATA TRANSFER ESTIMATION
3,510 GB, $193
Tokyo Virginia
Beta test in September 2017 (estimated)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
DATA TRANSFER: VIRGINIA ➜ TOKYO
570 GB, $11
Beta test in September 2017
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
DATA TRANSFER: TOKYO ➜ VIRGINIA
111 TB, $10,000
Beta test in September 2017
“ashamed-sad-silhouette-face-hand” by OpenClipart-Vectors is licensed under CC0
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
C U R R E N TP A S T
ECR & ECS
Virginia
us-east-1
Tokyo
ap-northest-1
ECSECR
Virginia
us-east-1
ECSECR
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
DATA TRANSFER CHARGES
Virginia
us-east-1
Tokyo
ap-northest-1
ECSECR
Docker image size ≈ 1 GB
$0.09/GB
• Multiple ECS agents
• EC2 instances get launched,
terminated due to auto-scaling
Pulling Docker images 100,000 times? Highly unlikely.
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
THE REAL CAUSE
Tokyo
ap-northest-1
S3 (Terrains)
Virginia
us-east-1
Game Servers ECS
+3 TB/day
$0.09/GB
+$270/day
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON S3 BUCKET REPLICATION
Tokyo
ap-northest-1
S3
Virginia
us-east-1
S3
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON S3 BUCKET REPLICATION
Tokyo
ap-northest-1
S3
Virginia
us-east-1
S3 ECS
Only once Free
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
What triggers Amazon ECS tasks?
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
NO AUDIENCE, NO PLAY
• No observer, no action
(For example, animals pause when no one is looking at them)
• Conserves compute resources
• Ecosystem Simulator does not run on areas with no activity
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SELECTIVE SIMULATION
• Vast lands, many islands
• Takes too much time to run Ecosystem Simulator everywhere
• Runs simulator selectively based on player activities
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
PLAYER ACTIVITIES
Triggers Ecosystem Simulator
at a particular probability
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
1 chunk = 16x16 tiles
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
RUN AMAZON ECS TASKS
run_ecs_task()
(Producer) (Consumer)
ECSGame Servers
Python boto3
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
FLUCTUATING DEMANDS
Computing Demands Computing Capacity
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
DestroyedReplenished
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SOLUTION: AMAZON SQS + AWS LAMBDA
(Producer) (Consumer)
SQS ECSLambdaGame Servers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON SIMPLE QUEUE SERVICE (SQS)
• Fully managed messaging queue service
• Makes it simple to decouple application components
• Fault tolerant, easy to scale
• Optional server-side encryption
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
TWO TYPES OF QUEUES
• Standard queue
• At-least-once delivery
• Best-effort ordering
• Maximum throughput
• FIFO (first-in-first-out) queue
• Exactly-once delivery
• Exact ordering
• With limited throughput (300 transactions per second)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
TWO TYPES OF QUEUES
• Standard queue
• At-least-once delivery
• Best-effort ordering
• Maximum throughput
• FIFO (first-in-first-out) queue
Exactly-once semantics is not a major concern
• Exactly-once delivery
• Exact ordering
• With limited throughput (300 transactions per second)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
VIEW AS A MATH PROBLEM
Problem Solution
Out of order 𝑓 𝑥 ⨀𝑓 𝑦 = 𝑓(𝑦)⨀𝑓(𝑥) Communicative
Duplication 𝑓 𝑥 ⨀𝑓 𝑥 = 𝑓(𝑥) Idempotent
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
f(x)
f(y)
f(z)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ASYMPTOTIC GROWTH
Iterations
#ofnaturalobjects
lim
𝑖→∞
𝑁𝑖 − 𝑁𝑖−1 = 0
Marginal difference in each iteration
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON SQS + AWS LAMBDA
(Producer) (Consumer)
SQS ECSLambdaGame Servers
Solves producer-consumer
speed mismatch issue
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON SQS + AWS LAMBDA
(Producer) (Consumer)
SQS ECSLambdaGame Servers
?
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS LAMBDA
• Serverless compute service
• Runs code without provisioning underlying compute resources
• Runs code in response to events
(API Gateway, Amazon S3, Amazon DynamoDB, and more)
• High availability, automatic scaling
• Pay by CPU-time and memory
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
INVOKING AWS LAMBDA
Lambda
API, Command
Event Source
or
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS LAMBDA EVENT SOURCES
• API Gateway
• AWS IoT
• Amazon CloudWatch Events
• Amazon CloudWatch Logs
• AWS CodeCommit
• Amazon Cognito Sync Trigger
• Amazon DynamoDB
• Amazon Kinesis
• Amazon S3
• Amazon SNS
• Amazon SQS is not on here
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
How do we trigger Lambda from Amazon SQS?
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SOLUTION 1
• CloudWatch alarm cron task that runs every minute
• Amazon SQS poller in a Lambda function
SQSLambdaCloudWatch Alarm
Every minute
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SOLUTION 2
• CloudWatch alarm on ApproximateNumberOfMessagesVisible >= 1
• The alarm publishes to an SNS topic that triggers a Lambda function
• Amazon SQS poller in a Lambda function
SQSLambdaCloudWatch alarm SNS
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON SIMPLE NOTIFICATION SERVICE (SNS)
• Fully managed pub/sub messaging and notifications service
• Sends messages to various endpoints
(for example, Lambda, SQS, HTTP/S, email, SMS)
• Sends notifications to mobile devices
• Fan out messages to a large number of subscribers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
PASSING METADATA
• .yml files containing
• Properties of natural objects
• Point of interests (POIs), terrain specifications
• Current garden state
• Describes where plants are located
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
LIMITATIONS OF AMAZON SQS
• Retention period of one to 14 days (four days by default)
• Maximum of 256 KB per message
• 120,000 messages in-flight for a standard queue (20,000 for a FIFO queue)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
LIMITATIONS OF AMAZON SQS
• Retention period of one to 14 days (four days by default)
• Maximum of 256 KB per message
The total size of metadata and garden state often exceeds this limit
• 120,000 messages in-flight for a standard queue (20,000 for a FIFO queue)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON S3 AS TEMPORARY STORAGE
ECSS3 SQSGame Servers
Metadata, garden state Replenish requests
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
PROBLEM: EVER-GROWING S3 BUCKET
Grows indefinitely
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON S3 LIFECYCLE MANAGEMENT
• Transition: Move objects to another storage class
• Standard
• Standard—infrequent access (IA)
• Glacier
• Expiration: Delete objects
• Based on user-defined rules
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
OBJECT EXPIRATION
• Object expiration policy with prefix matching
• Deletes objects
• Cleans up incomplete multipart uploads
• Runs once a day
• We use Amazon S3 as temporary storage,
delete any object older than a day
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
OBJECT AUTO-EXPIRATION
Proportional to
player activities
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
OBJECT TRANSITION
• Move objects to different storage class
• Standard-IA
• 25% lower cost
• Lower availability (99.9% vs 99%)
• Glacier
• 80% lower cost
• First-byte latency ranges from minutes to hours
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Getting the results back
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
CALLBACK
HTTP POST
x y entity_type
325 262 12852
462 53 13360
… … …
128 509 11559
ECS
Garden State
Game Servers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
CALLBACK
Virginia
us-east-1
Tokyo
ap-northest-1
HTTP over VPN
ECSGame Servers
No public HTTP
endpoint
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
CALLBACK
• Every test environment must have an external HTTP endpoint
• Difficult in some cases; virtual machine, corporate network
• Especially game designers and other non-technical people struggle with it
• Openswan instance ➜ potential SPOF
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
LOCAL DEVELOPMENT ENVIRONMENT
Windows
Ubuntu Linux
CorporateFirewall
• Virtual machine
• Port forwarding
• Security policy
• Manager approval
• Talking to IT department
ECS
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
POTENTIAL SINGLE POINT OF FAILURE
Virginia
us-east-1
Tokyo
ap-northest-1
Virtual Private
Gateways
Virtual Private
Gateways
EC2 Instance with
Openswan
SPOF!
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
POLLING MODEL
ECSS3 SQS
Periodically
Metadata, garden state
Game Servers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
• No direct communication between the game servers and Amazon ECS cluster
• Game servers and Amazon ECS cluster need not be in the same VPC
• No VPN
• No external HTTP endpoint
• Each component can operate, scale, and fail independently
• No SPOF
POLLING MODEL
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ECSS3 SQS
ECSLambdaGame Servers S3 SQS
Replenish Request
Replenish Response
Game Servers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Replenish Request
Replenish Response
ECSS3 SQS
ECSLambdaS3 SQSGame Servers
Game Servers
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Dealing with over-provision and under-provision
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Life was much simpler when Amazon was just a forest
“Amazon Manaus forest” by Phil P Harris is licensed under CC-BY-SA
(but, perhaps much more difficult)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AMAZON ELASTIC COMPUTE CLOUD (EC2)
• Launch or terminate instances with a few button clicks or an API call
• No up-front cost for purchasing, maintaining on-premises hardware
• Provisioning the right amount of computing resources is still a challenge
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AUTO SCALING
• Amazon SQS is good for smoothing out short-term spikes
What if we have long-term computing resource shortage?
What if we provisioned too many Amazon EC2 instances?
• Builds systems that respond to changes in demand
• Launches or terminates AWS resources based on user-defined conditions
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AUTO SCALING
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AUTO SCALING
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Taking cost reduction measures even further
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SPOT INSTANCES
• Bidding on spare Amazon EC2 compute capacity
• Customers set the maximum bidding price
• Significant lower price than on-demand instances
• Spot instances launch when the price falls below the bidding price
• Price changes in real time, based on supply and demand
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SUDDEN INTERRUPTIONS
• Spot instances terminate when the price goes above the bidding price
• Good for time-flexible and interruption-tolerant tasks
• Your architecture must be able to deal with sudden interruptions
• May not be suitable for mission-critical systems
• We use a combination of on-demand and spot instances
• They may belong to a single ECS cluster
• Guarantee some instances are running all the time
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
COST SAVED WITH SPOT INSTANCES
Beta test in September 2017
78%
$7,300 $1,600
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
RESERVED INSTANCES
• Instance type, availability zone, platform
(For example, m4.xlarge, us-east-1a, Ubuntu Linux)
• One-year or three-year contract terms
• 30–60% discounted rates
• Various payment plans
(No up-front, partial up-front, full up-front)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Recap
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Game Servers
S3 SQS
• Provides a solid infrastructure to run Docker containers
• Fully managed
• Container deployment, scheduling, monitoring
• Cluster configuration, management
• Elastic computing capacity
with Auto Scaling
• Need to provision
underlying compute resources
AMAZON EC2 CONTAINER SERVICE (ECS)
ECS
ECR
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ECS
ECR
Game Servers
AMAZON SIMPLE QUEUE SERVICE (SQS)
• Buffer between producer and consumer
• Decouple application components
• Build fault-tolerant, highly scalable systems
S3 SQS
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
ECS
ECR
Game Servers
• Object lifecycle management to move or delete objects
based on user-defined rules
• Bucket replication
AMAZON SIMPLE STORAGE SERVICE (S3)
S3 SQS
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS LAMBDA
• Think about your code, nothing else
(Servers, capacity, deployment, scalability, availability, operating systems,
language updates)
• Some limitations apply
(Time, memory usage, languages runtimes)
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
COST REDUCTION
• Auto Scaling (Prevent over-provisioning)
• Spot instances (Bidding on spare EC2 instances)
• Reserved instances (Long-term contract to get a discounted rate)
• Minimize inter-regional data transfer
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
COST REDUCTION
• Auto Scaling
• Spot instances
• Reserved instances
• Minimize inter-regional data transfer
“World Map” by molumen is licensed under the conditions of unlimited commercial use
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
THANK YOU!

More Related Content

What's hot

AMF305_Autonomous Driving Algorithm Development on Amazon AI
AMF305_Autonomous Driving Algorithm Development on Amazon AIAMF305_Autonomous Driving Algorithm Development on Amazon AI
AMF305_Autonomous Driving Algorithm Development on Amazon AIAmazon Web Services
 
Easy and Scalable Log Analytics with Amazon Elasticsearch Service - ABD326 - ...
Easy and Scalable Log Analytics with Amazon Elasticsearch Service - ABD326 - ...Easy and Scalable Log Analytics with Amazon Elasticsearch Service - ABD326 - ...
Easy and Scalable Log Analytics with Amazon Elasticsearch Service - ABD326 - ...Amazon Web Services
 
LFS307_Using AWS to Maximize Digital Marketing Reach and Efficiency
LFS307_Using AWS to Maximize Digital Marketing Reach and EfficiencyLFS307_Using AWS to Maximize Digital Marketing Reach and Efficiency
LFS307_Using AWS to Maximize Digital Marketing Reach and EfficiencyAmazon Web Services
 
ABD317_Building Your First Big Data Application on AWS - ABD317
ABD317_Building Your First Big Data Application on AWS - ABD317ABD317_Building Your First Big Data Application on AWS - ABD317
ABD317_Building Your First Big Data Application on AWS - ABD317Amazon Web Services
 
AMF302-Alexa Wheres My Car A Test Drive of the AWS Connected Car Reference.pdf
AMF302-Alexa Wheres My Car A Test Drive of the AWS Connected Car Reference.pdfAMF302-Alexa Wheres My Car A Test Drive of the AWS Connected Car Reference.pdf
AMF302-Alexa Wheres My Car A Test Drive of the AWS Connected Car Reference.pdfAmazon Web Services
 
ABD215_Serverless Data Prep with AWS Glue
ABD215_Serverless Data Prep with AWS GlueABD215_Serverless Data Prep with AWS Glue
ABD215_Serverless Data Prep with AWS GlueAmazon Web Services
 
A Look Under the Hood – How Amazon.com Uses AWS Services for Analytics at Mas...
A Look Under the Hood – How Amazon.com Uses AWS Services for Analytics at Mas...A Look Under the Hood – How Amazon.com Uses AWS Services for Analytics at Mas...
A Look Under the Hood – How Amazon.com Uses AWS Services for Analytics at Mas...Amazon Web Services
 
ABD327_Migrating Your Traditional Data Warehouse to a Modern Data Lake
ABD327_Migrating Your Traditional Data Warehouse to a Modern Data LakeABD327_Migrating Your Traditional Data Warehouse to a Modern Data Lake
ABD327_Migrating Your Traditional Data Warehouse to a Modern Data LakeAmazon Web Services
 
IOT313_AWS IoT and Machine Learning for Building Predictive Applications with...
IOT313_AWS IoT and Machine Learning for Building Predictive Applications with...IOT313_AWS IoT and Machine Learning for Building Predictive Applications with...
IOT313_AWS IoT and Machine Learning for Building Predictive Applications with...Amazon Web Services
 
WIN204-Simplifying Microsoft Architectures with AWS Services
WIN204-Simplifying Microsoft Architectures with AWS ServicesWIN204-Simplifying Microsoft Architectures with AWS Services
WIN204-Simplifying Microsoft Architectures with AWS ServicesAmazon Web Services
 
NEW LAUNCH! Building Alexa Skills for Businesses (ALX204)
NEW LAUNCH! Building Alexa Skills for Businesses (ALX204) NEW LAUNCH! Building Alexa Skills for Businesses (ALX204)
NEW LAUNCH! Building Alexa Skills for Businesses (ALX204) Amazon Web Services
 
IOT207_Panasonic—Building the Road of the Future on AWS
IOT207_Panasonic—Building the Road of the Future on AWSIOT207_Panasonic—Building the Road of the Future on AWS
IOT207_Panasonic—Building the Road of the Future on AWSAmazon Web Services
 
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...RET301-Build Single Customer View across Multiple Retail Channels using AWS S...
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...Amazon Web Services
 
DVC303-Technological Accelerants for Organizational Transformation
DVC303-Technological Accelerants for Organizational TransformationDVC303-Technological Accelerants for Organizational Transformation
DVC303-Technological Accelerants for Organizational TransformationAmazon Web Services
 
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud Data
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud DataGPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud Data
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud DataAmazon Web Services
 
Big Data, Analytics and Machine Learning on AWS Lambda - SRV402 - re:Invent 2017
Big Data, Analytics and Machine Learning on AWS Lambda - SRV402 - re:Invent 2017Big Data, Analytics and Machine Learning on AWS Lambda - SRV402 - re:Invent 2017
Big Data, Analytics and Machine Learning on AWS Lambda - SRV402 - re:Invent 2017Amazon Web Services
 
CON208_Building Microservices on AWS
CON208_Building Microservices on AWSCON208_Building Microservices on AWS
CON208_Building Microservices on AWSAmazon Web Services
 
GAM310_Build a Telemetry and Analytics Pipeline for Game Balancing
GAM310_Build a Telemetry and Analytics Pipeline for Game BalancingGAM310_Build a Telemetry and Analytics Pipeline for Game Balancing
GAM310_Build a Telemetry and Analytics Pipeline for Game BalancingAmazon Web Services
 
ABD215_Serverless Data Prep with AWS Glue
ABD215_Serverless Data Prep with AWS GlueABD215_Serverless Data Prep with AWS Glue
ABD215_Serverless Data Prep with AWS GlueAmazon Web Services
 
DynamoDB adaptive capacity: smooth performance for chaotic workloads - DAT327...
DynamoDB adaptive capacity: smooth performance for chaotic workloads - DAT327...DynamoDB adaptive capacity: smooth performance for chaotic workloads - DAT327...
DynamoDB adaptive capacity: smooth performance for chaotic workloads - DAT327...Amazon Web Services
 

What's hot (20)

AMF305_Autonomous Driving Algorithm Development on Amazon AI
AMF305_Autonomous Driving Algorithm Development on Amazon AIAMF305_Autonomous Driving Algorithm Development on Amazon AI
AMF305_Autonomous Driving Algorithm Development on Amazon AI
 
Easy and Scalable Log Analytics with Amazon Elasticsearch Service - ABD326 - ...
Easy and Scalable Log Analytics with Amazon Elasticsearch Service - ABD326 - ...Easy and Scalable Log Analytics with Amazon Elasticsearch Service - ABD326 - ...
Easy and Scalable Log Analytics with Amazon Elasticsearch Service - ABD326 - ...
 
LFS307_Using AWS to Maximize Digital Marketing Reach and Efficiency
LFS307_Using AWS to Maximize Digital Marketing Reach and EfficiencyLFS307_Using AWS to Maximize Digital Marketing Reach and Efficiency
LFS307_Using AWS to Maximize Digital Marketing Reach and Efficiency
 
ABD317_Building Your First Big Data Application on AWS - ABD317
ABD317_Building Your First Big Data Application on AWS - ABD317ABD317_Building Your First Big Data Application on AWS - ABD317
ABD317_Building Your First Big Data Application on AWS - ABD317
 
AMF302-Alexa Wheres My Car A Test Drive of the AWS Connected Car Reference.pdf
AMF302-Alexa Wheres My Car A Test Drive of the AWS Connected Car Reference.pdfAMF302-Alexa Wheres My Car A Test Drive of the AWS Connected Car Reference.pdf
AMF302-Alexa Wheres My Car A Test Drive of the AWS Connected Car Reference.pdf
 
ABD215_Serverless Data Prep with AWS Glue
ABD215_Serverless Data Prep with AWS GlueABD215_Serverless Data Prep with AWS Glue
ABD215_Serverless Data Prep with AWS Glue
 
A Look Under the Hood – How Amazon.com Uses AWS Services for Analytics at Mas...
A Look Under the Hood – How Amazon.com Uses AWS Services for Analytics at Mas...A Look Under the Hood – How Amazon.com Uses AWS Services for Analytics at Mas...
A Look Under the Hood – How Amazon.com Uses AWS Services for Analytics at Mas...
 
ABD327_Migrating Your Traditional Data Warehouse to a Modern Data Lake
ABD327_Migrating Your Traditional Data Warehouse to a Modern Data LakeABD327_Migrating Your Traditional Data Warehouse to a Modern Data Lake
ABD327_Migrating Your Traditional Data Warehouse to a Modern Data Lake
 
IOT313_AWS IoT and Machine Learning for Building Predictive Applications with...
IOT313_AWS IoT and Machine Learning for Building Predictive Applications with...IOT313_AWS IoT and Machine Learning for Building Predictive Applications with...
IOT313_AWS IoT and Machine Learning for Building Predictive Applications with...
 
WIN204-Simplifying Microsoft Architectures with AWS Services
WIN204-Simplifying Microsoft Architectures with AWS ServicesWIN204-Simplifying Microsoft Architectures with AWS Services
WIN204-Simplifying Microsoft Architectures with AWS Services
 
NEW LAUNCH! Building Alexa Skills for Businesses (ALX204)
NEW LAUNCH! Building Alexa Skills for Businesses (ALX204) NEW LAUNCH! Building Alexa Skills for Businesses (ALX204)
NEW LAUNCH! Building Alexa Skills for Businesses (ALX204)
 
IOT207_Panasonic—Building the Road of the Future on AWS
IOT207_Panasonic—Building the Road of the Future on AWSIOT207_Panasonic—Building the Road of the Future on AWS
IOT207_Panasonic—Building the Road of the Future on AWS
 
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...RET301-Build Single Customer View across Multiple Retail Channels using AWS S...
RET301-Build Single Customer View across Multiple Retail Channels using AWS S...
 
DVC303-Technological Accelerants for Organizational Transformation
DVC303-Technological Accelerants for Organizational TransformationDVC303-Technological Accelerants for Organizational Transformation
DVC303-Technological Accelerants for Organizational Transformation
 
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud Data
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud DataGPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud Data
GPSTEC315_GPS Optimizing Tips Amazon Redshift for Cloud Data
 
Big Data, Analytics and Machine Learning on AWS Lambda - SRV402 - re:Invent 2017
Big Data, Analytics and Machine Learning on AWS Lambda - SRV402 - re:Invent 2017Big Data, Analytics and Machine Learning on AWS Lambda - SRV402 - re:Invent 2017
Big Data, Analytics and Machine Learning on AWS Lambda - SRV402 - re:Invent 2017
 
CON208_Building Microservices on AWS
CON208_Building Microservices on AWSCON208_Building Microservices on AWS
CON208_Building Microservices on AWS
 
GAM310_Build a Telemetry and Analytics Pipeline for Game Balancing
GAM310_Build a Telemetry and Analytics Pipeline for Game BalancingGAM310_Build a Telemetry and Analytics Pipeline for Game Balancing
GAM310_Build a Telemetry and Analytics Pipeline for Game Balancing
 
ABD215_Serverless Data Prep with AWS Glue
ABD215_Serverless Data Prep with AWS GlueABD215_Serverless Data Prep with AWS Glue
ABD215_Serverless Data Prep with AWS Glue
 
DynamoDB adaptive capacity: smooth performance for chaotic workloads - DAT327...
DynamoDB adaptive capacity: smooth performance for chaotic workloads - DAT327...DynamoDB adaptive capacity: smooth performance for chaotic workloads - DAT327...
DynamoDB adaptive capacity: smooth performance for chaotic workloads - DAT327...
 

Similar to GAM305_Automating Mother Nature

Containers on AWS - re:Invent Comes to London 2.0
Containers on AWS - re:Invent Comes to London 2.0Containers on AWS - re:Invent Comes to London 2.0
Containers on AWS - re:Invent Comes to London 2.0Amazon Web Services
 
Moving to Amazon ECS – the Not-So-Obvious Benefits - CON356 - re:Invent 2017
Moving to Amazon ECS – the Not-So-Obvious Benefits - CON356 - re:Invent 2017Moving to Amazon ECS – the Not-So-Obvious Benefits - CON356 - re:Invent 2017
Moving to Amazon ECS – the Not-So-Obvious Benefits - CON356 - re:Invent 2017Amazon Web Services
 
Scaling Up to Your First 10 Million Users
Scaling Up to Your First 10 Million UsersScaling Up to Your First 10 Million Users
Scaling Up to Your First 10 Million UsersAmazon Web Services
 
韓國AWS遊戲業經驗和架構分享
韓國AWS遊戲業經驗和架構分享韓國AWS遊戲業經驗和架構分享
韓國AWS遊戲業經驗和架構分享Amazon Web Services
 
CON309_Containerized Machine Learning on AWS
CON309_Containerized Machine Learning on AWSCON309_Containerized Machine Learning on AWS
CON309_Containerized Machine Learning on AWSAmazon Web Services
 
Deep Dive into Amazon ECS & Fargate
Deep Dive into Amazon ECS & FargateDeep Dive into Amazon ECS & Fargate
Deep Dive into Amazon ECS & FargateAmazon Web Services
 
Build a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million usersBuild a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million usersAmazon Web Services
 
Build a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million usersBuild a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million usersAmazon Web Services
 
WIN203_With Amazon EC2 for Windows Server and Thinkbox Deadline
WIN203_With Amazon EC2 for Windows Server and Thinkbox DeadlineWIN203_With Amazon EC2 for Windows Server and Thinkbox Deadline
WIN203_With Amazon EC2 for Windows Server and Thinkbox DeadlineAmazon Web Services
 
AWS User Group Wellington - re:Invent 2017 Recap
AWS User Group Wellington - re:Invent 2017 RecapAWS User Group Wellington - re:Invent 2017 Recap
AWS User Group Wellington - re:Invent 2017 RecapAPI Talent
 
Design, Build, and Modernize Your Web Applications with AWS
 Design, Build, and Modernize Your Web Applications with AWS Design, Build, and Modernize Your Web Applications with AWS
Design, Build, and Modernize Your Web Applications with AWSDonnie Prakoso
 
Xây dựng website và ứng dụng mobile đáp ứng 10 triệu người dùng
Xây dựng website và ứng dụng mobile đáp ứng 10 triệu người dùngXây dựng website và ứng dụng mobile đáp ứng 10 triệu người dùng
Xây dựng website và ứng dụng mobile đáp ứng 10 triệu người dùngAmazon Web Services
 
How Netflix Encodes at Scale - CMP309 - re:Invent 2017
How Netflix Encodes at Scale - CMP309 - re:Invent 2017How Netflix Encodes at Scale - CMP309 - re:Invent 2017
How Netflix Encodes at Scale - CMP309 - re:Invent 2017Amazon Web Services
 
CMP213_GPU(G3) Applications in Media and Entertainment Workloads
CMP213_GPU(G3) Applications in Media and Entertainment WorkloadsCMP213_GPU(G3) Applications in Media and Entertainment Workloads
CMP213_GPU(G3) Applications in Media and Entertainment WorkloadsAmazon Web Services
 
ARC201_Scaling Up to Your First 10 Million Users
ARC201_Scaling Up to Your First 10 Million UsersARC201_Scaling Up to Your First 10 Million Users
ARC201_Scaling Up to Your First 10 Million UsersAmazon Web Services
 
Amazon EC2 and Amazon VPC Hands-On Workshop
Amazon EC2 and Amazon VPC Hands-On WorkshopAmazon EC2 and Amazon VPC Hands-On Workshop
Amazon EC2 and Amazon VPC Hands-On WorkshopAmazon Web Services
 
CON209_Interstella 8888 Learn How to Use Docker on AWS
CON209_Interstella 8888 Learn How to Use Docker on AWSCON209_Interstella 8888 Learn How to Use Docker on AWS
CON209_Interstella 8888 Learn How to Use Docker on AWSAmazon Web Services
 

Similar to GAM305_Automating Mother Nature (20)

Containers on AWS - re:Invent Comes to London 2.0
Containers on AWS - re:Invent Comes to London 2.0Containers on AWS - re:Invent Comes to London 2.0
Containers on AWS - re:Invent Comes to London 2.0
 
Moving to Amazon ECS – the Not-So-Obvious Benefits - CON356 - re:Invent 2017
Moving to Amazon ECS – the Not-So-Obvious Benefits - CON356 - re:Invent 2017Moving to Amazon ECS – the Not-So-Obvious Benefits - CON356 - re:Invent 2017
Moving to Amazon ECS – the Not-So-Obvious Benefits - CON356 - re:Invent 2017
 
Scaling Up to Your First 10 Million Users
Scaling Up to Your First 10 Million UsersScaling Up to Your First 10 Million Users
Scaling Up to Your First 10 Million Users
 
韓國AWS遊戲業經驗和架構分享
韓國AWS遊戲業經驗和架構分享韓國AWS遊戲業經驗和架構分享
韓國AWS遊戲業經驗和架構分享
 
Serverless Architectures.pdf
Serverless Architectures.pdfServerless Architectures.pdf
Serverless Architectures.pdf
 
AWS 容器服務入門實務
AWS 容器服務入門實務AWS 容器服務入門實務
AWS 容器服務入門實務
 
CON309_Containerized Machine Learning on AWS
CON309_Containerized Machine Learning on AWSCON309_Containerized Machine Learning on AWS
CON309_Containerized Machine Learning on AWS
 
Deep Dive into Amazon ECS & Fargate
Deep Dive into Amazon ECS & FargateDeep Dive into Amazon ECS & Fargate
Deep Dive into Amazon ECS & Fargate
 
Build a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million usersBuild a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million users
 
Build a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million usersBuild a Website & Mobile App for your first 10 million users
Build a Website & Mobile App for your first 10 million users
 
WIN203_With Amazon EC2 for Windows Server and Thinkbox Deadline
WIN203_With Amazon EC2 for Windows Server and Thinkbox DeadlineWIN203_With Amazon EC2 for Windows Server and Thinkbox Deadline
WIN203_With Amazon EC2 for Windows Server and Thinkbox Deadline
 
AWS User Group Wellington - re:Invent 2017 Recap
AWS User Group Wellington - re:Invent 2017 RecapAWS User Group Wellington - re:Invent 2017 Recap
AWS User Group Wellington - re:Invent 2017 Recap
 
Design, Build, and Modernize Your Web Applications with AWS
 Design, Build, and Modernize Your Web Applications with AWS Design, Build, and Modernize Your Web Applications with AWS
Design, Build, and Modernize Your Web Applications with AWS
 
Xây dựng website và ứng dụng mobile đáp ứng 10 triệu người dùng
Xây dựng website và ứng dụng mobile đáp ứng 10 triệu người dùngXây dựng website và ứng dụng mobile đáp ứng 10 triệu người dùng
Xây dựng website và ứng dụng mobile đáp ứng 10 triệu người dùng
 
How Netflix Encodes at Scale - CMP309 - re:Invent 2017
How Netflix Encodes at Scale - CMP309 - re:Invent 2017How Netflix Encodes at Scale - CMP309 - re:Invent 2017
How Netflix Encodes at Scale - CMP309 - re:Invent 2017
 
Introducing Amazon Fargate
Introducing Amazon FargateIntroducing Amazon Fargate
Introducing Amazon Fargate
 
CMP213_GPU(G3) Applications in Media and Entertainment Workloads
CMP213_GPU(G3) Applications in Media and Entertainment WorkloadsCMP213_GPU(G3) Applications in Media and Entertainment Workloads
CMP213_GPU(G3) Applications in Media and Entertainment Workloads
 
ARC201_Scaling Up to Your First 10 Million Users
ARC201_Scaling Up to Your First 10 Million UsersARC201_Scaling Up to Your First 10 Million Users
ARC201_Scaling Up to Your First 10 Million Users
 
Amazon EC2 and Amazon VPC Hands-On Workshop
Amazon EC2 and Amazon VPC Hands-On WorkshopAmazon EC2 and Amazon VPC Hands-On Workshop
Amazon EC2 and Amazon VPC Hands-On Workshop
 
CON209_Interstella 8888 Learn How to Use Docker on AWS
CON209_Interstella 8888 Learn How to Use Docker on AWSCON209_Interstella 8888 Learn How to Use Docker on AWS
CON209_Interstella 8888 Learn How to Use Docker on AWS
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

GAM305_Automating Mother Nature

  • 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Automating Mother Nature Sumin Byeon @NEXON G A M 3 0 5 N o v e m b e r 2 7 , 2 0 1 7
  • 2. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. The Beginning
  • 3. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. (Unknown title) by Ivan T is licensed under CC-BY
  • 4. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. “Ace bet business card 262333” by Pixabay is licensed under CC0
  • 5. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 6. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AUTOMATING MOTHER NATURE ECS S3 SQS ECR Game Servers
  • 7. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 8. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. NEXON • Headquartered in Seoul, South Korea • Global offices in Japan, North America, Europe • Specializes in online games for PC and mobile • Services +100 titles in +190 countries
  • 9. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 10. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 11. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 12. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. TODO: Insert the intro video
  • 13. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. DURANGO • Dinosaurs! • An open-world MMORPG • Survival, hunting, craftsmanship, farming, and collecting
  • 14. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. We want to make our ecosystem as realistic as possible
  • 15. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. REALISTIC ECOSYSTEM • Forests get destroyed by players • Slowly replenished over time
  • 16. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GROWING FOREST (Screenshot of evolving ecosystem)
  • 17. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 18. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 19. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 20. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. FORMING VEGETATION Factors to be considered: • Temperature • Humidity • Fertility of soil • Distance from water and other plants • Biome type • (and more) “The distribution of vegetation types as a function of mean annual temperature and precipitation” by Navarras is licensed under CC0
  • 21. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. ECOSYSTEM SIMULATOR Determines the type and the location of plants
  • 22. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. WHY NOT PLANT TREES MANUALLY? Islands 10,000 Estimated number of trees, shrubs, rocks, mud pits, and so on 180M Potential slots to put something +2.1B And still growing…
  • 23. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. WHY USE A DEDICATED SIMULATOR? • A lot of matrix operations and other calculations • Cannot be handled by a single node; multiple compute nodes are employed • Independently scale in/out Ecosystem Simulator • Game server written in Python (Not an ideal language for CPU-bound tasks)
  • 24. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. REPLENISHING WORKFLOW Ecosystem Simulator Current Garden State Next Garden State Game Server
  • 25. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. GARDEN STATE Tile coordinate Type of plant Mango tree Reed Heliconia x y entity_type 325 262 12852 462 53 13360 … … … 128 509 11559
  • 26. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Tile 284, 136
  • 27. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. THE ARCHITECTURE ECS S3 SQS ECR Game Servers
  • 28. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. PRODUCTION ENVIRONMENT • Multiple machines running Ecosystem Simulator • Software deployment can be tricky sometimes • Operating system, libraries, and frameworks versions
  • 29. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. NEED FOR SOLID BASE SYSTEM (Some reliable base system) Ecosystem Simulator Ecosystem Simulator Ecosystem Simulator
  • 30. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SOLUTION: DOCKER
  • 31. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON EC2 CONTAINER SERVICE (ECS) • Highly scalable, high performance container management service • Managed cluster of Amazon EC2 instances • Container deployment, scheduling, monitoring • Cluster configuration, management • Requires provisioning of underlying compute resources
  • 32. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. PULLING FROM AMAZON ECR ECS ECR I need an Ecosystem Simulator Docker image Okay
  • 33. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON EC2 CONTAINER REGISTRY (ECR) • Fully-managed Docker container registry • Similar to Docker Hub • IAM based access control • No additional cost; pay for S3 storage and data transfer usage
  • 34. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. REGIONAL OFFLOADING • Initially thought the Amazon ECR must be in the same region as the Amazon ECS (That was not the case!) • Amazon ECR was only available in Virginia when we started working on this • Game servers in Tokyo, Amazon ECS cluster in Virginia • Virginia has 22% lower Amazon EC2 prices than Tokyo • Ended up saving some cost in computing resources
  • 35. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. COST SAVINGS With on-demand instances, beta test in September 2017 $9,100/mo Tokyo $7,300/mo Virginia 20%
  • 36. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. INTER-REGIONAL DATA TRANSFER $90/TB $90,000/PB $0.09 for each GB transferred
  • 37. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. DATA TRANSFER ESTIMATION 3,510 GB, $193 Tokyo Virginia Beta test in September 2017 (estimated)
  • 38. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. DATA TRANSFER: VIRGINIA ➜ TOKYO 570 GB, $11 Beta test in September 2017
  • 39. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. DATA TRANSFER: TOKYO ➜ VIRGINIA 111 TB, $10,000 Beta test in September 2017 “ashamed-sad-silhouette-face-hand” by OpenClipart-Vectors is licensed under CC0
  • 40. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. C U R R E N TP A S T ECR & ECS Virginia us-east-1 Tokyo ap-northest-1 ECSECR Virginia us-east-1 ECSECR
  • 41. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. DATA TRANSFER CHARGES Virginia us-east-1 Tokyo ap-northest-1 ECSECR Docker image size ≈ 1 GB $0.09/GB • Multiple ECS agents • EC2 instances get launched, terminated due to auto-scaling Pulling Docker images 100,000 times? Highly unlikely.
  • 42. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. THE REAL CAUSE Tokyo ap-northest-1 S3 (Terrains) Virginia us-east-1 Game Servers ECS +3 TB/day $0.09/GB +$270/day
  • 43. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON S3 BUCKET REPLICATION Tokyo ap-northest-1 S3 Virginia us-east-1 S3
  • 44. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON S3 BUCKET REPLICATION Tokyo ap-northest-1 S3 Virginia us-east-1 S3 ECS Only once Free
  • 45. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. What triggers Amazon ECS tasks?
  • 46. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. NO AUDIENCE, NO PLAY • No observer, no action (For example, animals pause when no one is looking at them) • Conserves compute resources • Ecosystem Simulator does not run on areas with no activity
  • 47. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SELECTIVE SIMULATION • Vast lands, many islands • Takes too much time to run Ecosystem Simulator everywhere • Runs simulator selectively based on player activities
  • 48. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. PLAYER ACTIVITIES Triggers Ecosystem Simulator at a particular probability
  • 49. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 1 chunk = 16x16 tiles
  • 50. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. RUN AMAZON ECS TASKS run_ecs_task() (Producer) (Consumer) ECSGame Servers Python boto3
  • 51. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. FLUCTUATING DEMANDS Computing Demands Computing Capacity
  • 52. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. DestroyedReplenished
  • 53. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SOLUTION: AMAZON SQS + AWS LAMBDA (Producer) (Consumer) SQS ECSLambdaGame Servers
  • 54. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON SIMPLE QUEUE SERVICE (SQS) • Fully managed messaging queue service • Makes it simple to decouple application components • Fault tolerant, easy to scale • Optional server-side encryption
  • 55. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. TWO TYPES OF QUEUES • Standard queue • At-least-once delivery • Best-effort ordering • Maximum throughput • FIFO (first-in-first-out) queue • Exactly-once delivery • Exact ordering • With limited throughput (300 transactions per second)
  • 56. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. TWO TYPES OF QUEUES • Standard queue • At-least-once delivery • Best-effort ordering • Maximum throughput • FIFO (first-in-first-out) queue Exactly-once semantics is not a major concern • Exactly-once delivery • Exact ordering • With limited throughput (300 transactions per second)
  • 57. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. VIEW AS A MATH PROBLEM Problem Solution Out of order 𝑓 𝑥 ⨀𝑓 𝑦 = 𝑓(𝑦)⨀𝑓(𝑥) Communicative Duplication 𝑓 𝑥 ⨀𝑓 𝑥 = 𝑓(𝑥) Idempotent
  • 58. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. f(x) f(y) f(z)
  • 59. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. ASYMPTOTIC GROWTH Iterations #ofnaturalobjects lim 𝑖→∞ 𝑁𝑖 − 𝑁𝑖−1 = 0 Marginal difference in each iteration
  • 60. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON SQS + AWS LAMBDA (Producer) (Consumer) SQS ECSLambdaGame Servers Solves producer-consumer speed mismatch issue
  • 61. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON SQS + AWS LAMBDA (Producer) (Consumer) SQS ECSLambdaGame Servers ?
  • 62. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS LAMBDA • Serverless compute service • Runs code without provisioning underlying compute resources • Runs code in response to events (API Gateway, Amazon S3, Amazon DynamoDB, and more) • High availability, automatic scaling • Pay by CPU-time and memory
  • 63. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. INVOKING AWS LAMBDA Lambda API, Command Event Source or
  • 64. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS LAMBDA EVENT SOURCES • API Gateway • AWS IoT • Amazon CloudWatch Events • Amazon CloudWatch Logs • AWS CodeCommit • Amazon Cognito Sync Trigger • Amazon DynamoDB • Amazon Kinesis • Amazon S3 • Amazon SNS • Amazon SQS is not on here
  • 65. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. How do we trigger Lambda from Amazon SQS?
  • 66. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SOLUTION 1 • CloudWatch alarm cron task that runs every minute • Amazon SQS poller in a Lambda function SQSLambdaCloudWatch Alarm Every minute
  • 67. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SOLUTION 2 • CloudWatch alarm on ApproximateNumberOfMessagesVisible >= 1 • The alarm publishes to an SNS topic that triggers a Lambda function • Amazon SQS poller in a Lambda function SQSLambdaCloudWatch alarm SNS
  • 68. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON SIMPLE NOTIFICATION SERVICE (SNS) • Fully managed pub/sub messaging and notifications service • Sends messages to various endpoints (for example, Lambda, SQS, HTTP/S, email, SMS) • Sends notifications to mobile devices • Fan out messages to a large number of subscribers
  • 69. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. PASSING METADATA • .yml files containing • Properties of natural objects • Point of interests (POIs), terrain specifications • Current garden state • Describes where plants are located
  • 70. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. LIMITATIONS OF AMAZON SQS • Retention period of one to 14 days (four days by default) • Maximum of 256 KB per message • 120,000 messages in-flight for a standard queue (20,000 for a FIFO queue)
  • 71. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. LIMITATIONS OF AMAZON SQS • Retention period of one to 14 days (four days by default) • Maximum of 256 KB per message The total size of metadata and garden state often exceeds this limit • 120,000 messages in-flight for a standard queue (20,000 for a FIFO queue)
  • 72. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON S3 AS TEMPORARY STORAGE ECSS3 SQSGame Servers Metadata, garden state Replenish requests
  • 73. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. PROBLEM: EVER-GROWING S3 BUCKET Grows indefinitely
  • 74. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON S3 LIFECYCLE MANAGEMENT • Transition: Move objects to another storage class • Standard • Standard—infrequent access (IA) • Glacier • Expiration: Delete objects • Based on user-defined rules
  • 75. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. OBJECT EXPIRATION • Object expiration policy with prefix matching • Deletes objects • Cleans up incomplete multipart uploads • Runs once a day • We use Amazon S3 as temporary storage, delete any object older than a day
  • 76. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. OBJECT AUTO-EXPIRATION Proportional to player activities
  • 77. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. OBJECT TRANSITION • Move objects to different storage class • Standard-IA • 25% lower cost • Lower availability (99.9% vs 99%) • Glacier • 80% lower cost • First-byte latency ranges from minutes to hours
  • 78. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Getting the results back
  • 79. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. CALLBACK HTTP POST x y entity_type 325 262 12852 462 53 13360 … … … 128 509 11559 ECS Garden State Game Servers
  • 80. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. CALLBACK Virginia us-east-1 Tokyo ap-northest-1 HTTP over VPN ECSGame Servers No public HTTP endpoint
  • 81. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. CALLBACK • Every test environment must have an external HTTP endpoint • Difficult in some cases; virtual machine, corporate network • Especially game designers and other non-technical people struggle with it • Openswan instance ➜ potential SPOF
  • 82. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. LOCAL DEVELOPMENT ENVIRONMENT Windows Ubuntu Linux CorporateFirewall • Virtual machine • Port forwarding • Security policy • Manager approval • Talking to IT department ECS
  • 83. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. POTENTIAL SINGLE POINT OF FAILURE Virginia us-east-1 Tokyo ap-northest-1 Virtual Private Gateways Virtual Private Gateways EC2 Instance with Openswan SPOF!
  • 84. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. POLLING MODEL ECSS3 SQS Periodically Metadata, garden state Game Servers
  • 85. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. • No direct communication between the game servers and Amazon ECS cluster • Game servers and Amazon ECS cluster need not be in the same VPC • No VPN • No external HTTP endpoint • Each component can operate, scale, and fail independently • No SPOF POLLING MODEL
  • 86. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. ECSS3 SQS ECSLambdaGame Servers S3 SQS Replenish Request Replenish Response Game Servers
  • 87. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Replenish Request Replenish Response ECSS3 SQS ECSLambdaS3 SQSGame Servers Game Servers
  • 88. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Dealing with over-provision and under-provision
  • 89. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Life was much simpler when Amazon was just a forest “Amazon Manaus forest” by Phil P Harris is licensed under CC-BY-SA (but, perhaps much more difficult)
  • 90. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AMAZON ELASTIC COMPUTE CLOUD (EC2) • Launch or terminate instances with a few button clicks or an API call • No up-front cost for purchasing, maintaining on-premises hardware • Provisioning the right amount of computing resources is still a challenge
  • 91. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AUTO SCALING • Amazon SQS is good for smoothing out short-term spikes What if we have long-term computing resource shortage? What if we provisioned too many Amazon EC2 instances? • Builds systems that respond to changes in demand • Launches or terminates AWS resources based on user-defined conditions
  • 92. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AUTO SCALING
  • 93. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AUTO SCALING
  • 94. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Taking cost reduction measures even further
  • 95. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SPOT INSTANCES • Bidding on spare Amazon EC2 compute capacity • Customers set the maximum bidding price • Significant lower price than on-demand instances • Spot instances launch when the price falls below the bidding price • Price changes in real time, based on supply and demand
  • 96. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SUDDEN INTERRUPTIONS • Spot instances terminate when the price goes above the bidding price • Good for time-flexible and interruption-tolerant tasks • Your architecture must be able to deal with sudden interruptions • May not be suitable for mission-critical systems • We use a combination of on-demand and spot instances • They may belong to a single ECS cluster • Guarantee some instances are running all the time
  • 97. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. COST SAVED WITH SPOT INSTANCES Beta test in September 2017 78% $7,300 $1,600
  • 98. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. RESERVED INSTANCES • Instance type, availability zone, platform (For example, m4.xlarge, us-east-1a, Ubuntu Linux) • One-year or three-year contract terms • 30–60% discounted rates • Various payment plans (No up-front, partial up-front, full up-front)
  • 99. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Recap
  • 100. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Game Servers S3 SQS • Provides a solid infrastructure to run Docker containers • Fully managed • Container deployment, scheduling, monitoring • Cluster configuration, management • Elastic computing capacity with Auto Scaling • Need to provision underlying compute resources AMAZON EC2 CONTAINER SERVICE (ECS) ECS ECR
  • 101. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. ECS ECR Game Servers AMAZON SIMPLE QUEUE SERVICE (SQS) • Buffer between producer and consumer • Decouple application components • Build fault-tolerant, highly scalable systems S3 SQS
  • 102. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. ECS ECR Game Servers • Object lifecycle management to move or delete objects based on user-defined rules • Bucket replication AMAZON SIMPLE STORAGE SERVICE (S3) S3 SQS
  • 103. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS LAMBDA • Think about your code, nothing else (Servers, capacity, deployment, scalability, availability, operating systems, language updates) • Some limitations apply (Time, memory usage, languages runtimes)
  • 104. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. COST REDUCTION • Auto Scaling (Prevent over-provisioning) • Spot instances (Bidding on spare EC2 instances) • Reserved instances (Long-term contract to get a discounted rate) • Minimize inter-regional data transfer
  • 105. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. COST REDUCTION • Auto Scaling • Spot instances • Reserved instances • Minimize inter-regional data transfer “World Map” by molumen is licensed under the conditions of unlimited commercial use
  • 106. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. THANK YOU!