SlideShare una empresa de Scribd logo
1 de 21
Descargar para leer sin conexión
Choosing Our Spots
How Tapjoy Saves with Amazon Spot Pricing
®

Weston Jossey
November 13th, 2013

© 2013 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified, or distributed in whole or in part without the express consent of Amazon.com, Inc.
Friday, November 15, 13
A Brief Introduction

Friday, November 15, 13
Who Am I?
• Engineer turned DevOps junkie
• Multiple Areas of Focus
•
•
•
•

Performance
Cost Management & Reduction
Efficiency
As Needed Firefighter

Friday, November 15, 13
Tapjoy’s Challenge
• Premier Mobile Ad Network Across iOS & Android
• Global Network (435 Million Monthly Reach)
• Diverse user base (54% Male, 46% Female)
• Billions of requests per day
• Growth requires iteration, experimentation, and massive
scale
• Small mistakes are magnified to millions of consumers
instantly
Friday, November 15, 13
Scale Horizontally
Everywhere

Friday, November 15, 13
What Everyone Sees
1. Develop a killer product, hire more engineers
2. Expand product as fast as possible, gain market
share
3. Iterate, grow, refine, scale...
4. #Profit

Friday, November 15, 13
What Everyone Forgets to Mention
• Engineering is a game of tradeoffs. Fast growth
comes at a price.
• Testing and QA are often the first to lag behind.
• Building quality test beds for engineers can be
complicated.

Friday, November 15, 13
Food for Thought
• Where are your bottlenecks in your development
cycle?
• How do you simulate production?

Friday, November 15, 13
Spot Instances:
The Dremel of Engineering
®

Friday, November 15, 13
The Mindset Required
• Engineer application level redundancy and fault
tolerance.
• Spread yourself amongst many zones, potentially even
many regions.
• Identify areas of required, not preferred, persistence.
• Understand how your “neighbors” are utilizing your
preferred instance type.

Friday, November 15, 13
Always Be Testing
• Lots of engineering means...
• Lots of code pushes
• Lots of pull requests
• Lots of automated tests to be run frequently to prevent regressions

• Full test suites can take > 1 hour when run serially.
• Can slow down the review process when changes
require at minimum an hour lag for automated sign-off.

Friday, November 15, 13
Scale Horizontally With Spot Instances
• Jenkins + Spot Instances
• https://github.com/bwall/ec2-plugin

• Go wide during business hours, scale back in the
evenings. Automatically kicks online at 06:00ET
• Workers scale horizontally to support dozens of
simultaneous regression tests spread out over dozens
of workers
• Jenkins automatically guards against spot termination
Friday, November 15, 13
Tapinabox
• Born from Tapjoy Hackathon
• Quarterly hackathons to promote engineering growth and creativity.
• Question Posed: “What if spinning up a fresh QA was as easy as launching
a app server on Heroku?”

• Goals
•
•
•
•

Behaves, operates, and performs like production.
Should be dead-simple to use. “Push a button, get a server.”
Save money through improved quality and low cost to operate.
End-To-End Product. No mocks, no stubs.

Friday, November 15, 13
Tapinabox Cont.
• Fully automated build & deployment process tied to a
developers Github account.
• Simple web interface for creating, managing, and
editing instances.
• Quick collaboration with Product Managers, remote
QA, and partner testing.
• Fully run on Spot Instances.

Friday, November 15, 13
Friday, November 15, 13
Friday, November 15, 13
How we Built Tapinabox
• Ruby on Rails
• AWS CLI
• Chef
• Amazon EC2 Spot Instances (zone & region agnostic)
• Tapjoy Slugs: Custom slug-deployments based on
FPM https://github.com/jordansissel/fpm

Friday, November 15, 13
Pointers & Lessons Learned
• Spot Instances can take a while to provision with a different
workflow than a traditional on-demand model.
• Very important to find quiet zones / regions based on your
workload.
• Pricing sometimes takes a back seat to reliability. What
instance types have contention?
• Guard against termination with adequate pricing, but don’t try
and prevent it. Automation is key. The price will eventually fall.
• Pick the right tool for the job. Don’t get greedy!
Friday, November 15, 13
Kudos
• Tapjoy Automation Team
•
•
•
•
•

John Russell
Chris Gerber
JLo
Adam Bell
Hugh Barrigan

Friday, November 15, 13
Thank You
weston.jossey@tapjoy.com
@dustywes

Friday, November 15, 13
Please give us your feedback on this
presentation

CPN207
As a thank you, we will select prize
winners daily for completed surveys!

Friday, November 15, 13

Thank You

Más contenido relacionado

La actualidad más candente

Faster Builds and Emulators (Xamarin.Android)
Faster Builds and Emulators (Xamarin.Android)Faster Builds and Emulators (Xamarin.Android)
Faster Builds and Emulators (Xamarin.Android)Shail D
 
Extreme Programming Deployed
Extreme Programming DeployedExtreme Programming Deployed
Extreme Programming DeployedSteve Loughran
 
Surviving Black Friday - CodeMotion
Surviving Black Friday - CodeMotionSurviving Black Friday - CodeMotion
Surviving Black Friday - CodeMotionOmri Fima
 
Webcamp Ep 3 - Modern Web Development
Webcamp Ep 3  - Modern Web DevelopmentWebcamp Ep 3  - Modern Web Development
Webcamp Ep 3 - Modern Web DevelopmentJohn Wong
 
Q6 what have you learnt about technologies...
Q6   what have you learnt about technologies...Q6   what have you learnt about technologies...
Q6 what have you learnt about technologies...greenyellowblue
 
How is creating power point
How is creating power pointHow is creating power point
How is creating power pointppashmak
 
Inside Out: A Web Performance Philosophy
Inside Out: A Web Performance PhilosophyInside Out: A Web Performance Philosophy
Inside Out: A Web Performance PhilosophyWillie Jackson
 
Diy cont integration_dc_cebu
Diy cont integration_dc_cebuDiy cont integration_dc_cebu
Diy cont integration_dc_cebuJohnnie Fox
 
FutureOfAgile
FutureOfAgileFutureOfAgile
FutureOfAgileRob Healy
 
Surviving Black Friday - A resilience engineering tale - Omri Fima - Codemoti...
Surviving Black Friday - A resilience engineering tale - Omri Fima - Codemoti...Surviving Black Friday - A resilience engineering tale - Omri Fima - Codemoti...
Surviving Black Friday - A resilience engineering tale - Omri Fima - Codemoti...Codemotion
 
Slides for 150911 (notes copy)
Slides for 150911 (notes copy)Slides for 150911 (notes copy)
Slides for 150911 (notes copy)thomas mathie
 
9 Productive Tips to Work Faster
9 Productive Tips to Work Faster9 Productive Tips to Work Faster
9 Productive Tips to Work FasterShore Labs
 
Drop Your Website Load Times Down a Waterfall
Drop Your Website Load Times Down a Waterfall Drop Your Website Load Times Down a Waterfall
Drop Your Website Load Times Down a Waterfall Jeff Costa
 

La actualidad más candente (14)

Faster Builds and Emulators (Xamarin.Android)
Faster Builds and Emulators (Xamarin.Android)Faster Builds and Emulators (Xamarin.Android)
Faster Builds and Emulators (Xamarin.Android)
 
Extreme Programming Deployed
Extreme Programming DeployedExtreme Programming Deployed
Extreme Programming Deployed
 
Surviving Black Friday - CodeMotion
Surviving Black Friday - CodeMotionSurviving Black Friday - CodeMotion
Surviving Black Friday - CodeMotion
 
Webcamp Ep 3 - Modern Web Development
Webcamp Ep 3  - Modern Web DevelopmentWebcamp Ep 3  - Modern Web Development
Webcamp Ep 3 - Modern Web Development
 
Kanban stand-up meetings
Kanban stand-up meetingsKanban stand-up meetings
Kanban stand-up meetings
 
Q6 what have you learnt about technologies...
Q6   what have you learnt about technologies...Q6   what have you learnt about technologies...
Q6 what have you learnt about technologies...
 
How is creating power point
How is creating power pointHow is creating power point
How is creating power point
 
Inside Out: A Web Performance Philosophy
Inside Out: A Web Performance PhilosophyInside Out: A Web Performance Philosophy
Inside Out: A Web Performance Philosophy
 
Diy cont integration_dc_cebu
Diy cont integration_dc_cebuDiy cont integration_dc_cebu
Diy cont integration_dc_cebu
 
FutureOfAgile
FutureOfAgileFutureOfAgile
FutureOfAgile
 
Surviving Black Friday - A resilience engineering tale - Omri Fima - Codemoti...
Surviving Black Friday - A resilience engineering tale - Omri Fima - Codemoti...Surviving Black Friday - A resilience engineering tale - Omri Fima - Codemoti...
Surviving Black Friday - A resilience engineering tale - Omri Fima - Codemoti...
 
Slides for 150911 (notes copy)
Slides for 150911 (notes copy)Slides for 150911 (notes copy)
Slides for 150911 (notes copy)
 
9 Productive Tips to Work Faster
9 Productive Tips to Work Faster9 Productive Tips to Work Faster
9 Productive Tips to Work Faster
 
Drop Your Website Load Times Down a Waterfall
Drop Your Website Load Times Down a Waterfall Drop Your Website Load Times Down a Waterfall
Drop Your Website Load Times Down a Waterfall
 

Destacado

AWS Customer Presentation - Cycle Computing - AWS Summit 2012 - NYC
AWS Customer  Presentation - Cycle Computing - AWS Summit 2012 - NYCAWS Customer  Presentation - Cycle Computing - AWS Summit 2012 - NYC
AWS Customer Presentation - Cycle Computing - AWS Summit 2012 - NYCAmazon Web Services
 
AWS Customer Presentation - Zanran and AWS
AWS Customer Presentation - Zanran and AWSAWS Customer Presentation - Zanran and AWS
AWS Customer Presentation - Zanran and AWSAmazon Web Services
 
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWSGetting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWSAmazon Web Services
 
AWS Customer Presentation - Shutl and AWS
AWS Customer Presentation - Shutl and AWSAWS Customer Presentation - Shutl and AWS
AWS Customer Presentation - Shutl and AWSAmazon Web Services
 
AWS Summit 2011 : Opening Keynote State of the Cloud Werner Vogels
AWS Summit 2011 : Opening Keynote State of the Cloud Werner VogelsAWS Summit 2011 : Opening Keynote State of the Cloud Werner Vogels
AWS Summit 2011 : Opening Keynote State of the Cloud Werner VogelsAmazon Web Services
 
AWS Customer Presentation-Redefining the Relationship Between Game Maker and ...
AWS Customer Presentation-Redefining the Relationship Between Game Maker and ...AWS Customer Presentation-Redefining the Relationship Between Game Maker and ...
AWS Customer Presentation-Redefining the Relationship Between Game Maker and ...Amazon Web Services
 
Running a lean startup with aws technical workshop
Running a lean startup with aws   technical workshopRunning a lean startup with aws   technical workshop
Running a lean startup with aws technical workshopAmazon Web Services
 
Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013
Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013
Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013Amazon Web Services
 
A Day in the Life of a Billion Packets (CPN401) | AWS re:Invent 2013
A Day in the Life of a Billion Packets (CPN401) | AWS re:Invent 2013A Day in the Life of a Billion Packets (CPN401) | AWS re:Invent 2013
A Day in the Life of a Billion Packets (CPN401) | AWS re:Invent 2013Amazon Web Services
 
Continuous Deployment Practices, with Production, Test and Development Enviro...
Continuous Deployment Practices, with Production, Test and Development Enviro...Continuous Deployment Practices, with Production, Test and Development Enviro...
Continuous Deployment Practices, with Production, Test and Development Enviro...Amazon Web Services
 
How I learned to stop worrying and love the cloud
How I learned to stop worrying and love the cloudHow I learned to stop worrying and love the cloud
How I learned to stop worrying and love the cloudShlomo Swidler
 

Destacado (12)

AWS Customer Presentation - Cycle Computing - AWS Summit 2012 - NYC
AWS Customer  Presentation - Cycle Computing - AWS Summit 2012 - NYCAWS Customer  Presentation - Cycle Computing - AWS Summit 2012 - NYC
AWS Customer Presentation - Cycle Computing - AWS Summit 2012 - NYC
 
AWS Customer Presentation - Zanran and AWS
AWS Customer Presentation - Zanran and AWSAWS Customer Presentation - Zanran and AWS
AWS Customer Presentation - Zanran and AWS
 
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWSGetting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
Getting started in the AWS Cloud, Glen Robinson, Solutions Architect, AWS
 
AWS Customer Presentation - Shutl and AWS
AWS Customer Presentation - Shutl and AWSAWS Customer Presentation - Shutl and AWS
AWS Customer Presentation - Shutl and AWS
 
AWS Summit 2011 : Opening Keynote State of the Cloud Werner Vogels
AWS Summit 2011 : Opening Keynote State of the Cloud Werner VogelsAWS Summit 2011 : Opening Keynote State of the Cloud Werner Vogels
AWS Summit 2011 : Opening Keynote State of the Cloud Werner Vogels
 
Amazon Simple Email Service 101
Amazon Simple Email Service 101Amazon Simple Email Service 101
Amazon Simple Email Service 101
 
AWS Customer Presentation-Redefining the Relationship Between Game Maker and ...
AWS Customer Presentation-Redefining the Relationship Between Game Maker and ...AWS Customer Presentation-Redefining the Relationship Between Game Maker and ...
AWS Customer Presentation-Redefining the Relationship Between Game Maker and ...
 
Running a lean startup with aws technical workshop
Running a lean startup with aws   technical workshopRunning a lean startup with aws   technical workshop
Running a lean startup with aws technical workshop
 
Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013
Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013
Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013
 
A Day in the Life of a Billion Packets (CPN401) | AWS re:Invent 2013
A Day in the Life of a Billion Packets (CPN401) | AWS re:Invent 2013A Day in the Life of a Billion Packets (CPN401) | AWS re:Invent 2013
A Day in the Life of a Billion Packets (CPN401) | AWS re:Invent 2013
 
Continuous Deployment Practices, with Production, Test and Development Enviro...
Continuous Deployment Practices, with Production, Test and Development Enviro...Continuous Deployment Practices, with Production, Test and Development Enviro...
Continuous Deployment Practices, with Production, Test and Development Enviro...
 
How I learned to stop worrying and love the cloud
How I learned to stop worrying and love the cloudHow I learned to stop worrying and love the cloud
How I learned to stop worrying and love the cloud
 

Similar a Re:Inventing your Innovation Cycle by Scaling Out with Spot Instances (CPN207) | AWS re:Invent 2013

Minimum Viable Architecture - Good Enough is Good Enough
Minimum Viable Architecture - Good Enough is Good EnoughMinimum Viable Architecture - Good Enough is Good Enough
Minimum Viable Architecture - Good Enough is Good EnoughRandy Shoup
 
Winning strategies in Test Automation
Winning strategies in Test AutomationWinning strategies in Test Automation
Winning strategies in Test AutomationXBOSoft
 
Software Engineering in Startups
Software Engineering in StartupsSoftware Engineering in Startups
Software Engineering in StartupsDusan Omercevic
 
Getting your mobile test automation process in place - using Cucumber and Cal...
Getting your mobile test automation process in place - using Cucumber and Cal...Getting your mobile test automation process in place - using Cucumber and Cal...
Getting your mobile test automation process in place - using Cucumber and Cal...Niels Frydenholm
 
Ensuring Performance in a Fast-Paced Environment (CMG 2014)
Ensuring Performance in a Fast-Paced Environment (CMG 2014)Ensuring Performance in a Fast-Paced Environment (CMG 2014)
Ensuring Performance in a Fast-Paced Environment (CMG 2014)Martin Spier
 
Applying Chaos Engineering to Build Resilient Serverless Applications
Applying Chaos Engineering to Build Resilient Serverless Applications Applying Chaos Engineering to Build Resilient Serverless Applications
Applying Chaos Engineering to Build Resilient Serverless Applications Emrah Samdan
 
Automated Exploratory Testing
Automated Exploratory TestingAutomated Exploratory Testing
Automated Exploratory TestingJustin Ison
 
Customized Scrum
Customized ScrumCustomized Scrum
Customized ScrumAbdul Karim
 
Minimum Viable Architecture -- Good Enough is Good Enough in a Startup
Minimum Viable Architecture -- Good Enough is Good Enough in a StartupMinimum Viable Architecture -- Good Enough is Good Enough in a Startup
Minimum Viable Architecture -- Good Enough is Good Enough in a StartupRandy Shoup
 
How Parse Built a Mobile Backend as a Service on AWS (MBL307) | AWS re:Invent...
How Parse Built a Mobile Backend as a Service on AWS (MBL307) | AWS re:Invent...How Parse Built a Mobile Backend as a Service on AWS (MBL307) | AWS re:Invent...
How Parse Built a Mobile Backend as a Service on AWS (MBL307) | AWS re:Invent...Amazon Web Services
 
Justin Ison
Justin IsonJustin Ison
Justin IsonCodeFest
 
DevOps, what should you decide, when, why & how - Vinita Rathi
DevOps, what should you decide, when, why & how - Vinita RathiDevOps, what should you decide, when, why & how - Vinita Rathi
DevOps, what should you decide, when, why & how - Vinita RathiJAXLondon_Conference
 
All about that reactive ui
All about that reactive uiAll about that reactive ui
All about that reactive uiPaul van Zyl
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...DevConFu
 
Minimal Viable Architecture - Silicon Slopes 2020
Minimal Viable Architecture - Silicon Slopes 2020Minimal Viable Architecture - Silicon Slopes 2020
Minimal Viable Architecture - Silicon Slopes 2020Randy Shoup
 
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremDeploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremKris Buytaert
 
Scaling a Mobile Web App to 100 Million Clients and Beyond (MBL302) | AWS re:...
Scaling a Mobile Web App to 100 Million Clients and Beyond (MBL302) | AWS re:...Scaling a Mobile Web App to 100 Million Clients and Beyond (MBL302) | AWS re:...
Scaling a Mobile Web App to 100 Million Clients and Beyond (MBL302) | AWS re:...Amazon Web Services
 
Stapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoStapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoChristian Heilmann
 

Similar a Re:Inventing your Innovation Cycle by Scaling Out with Spot Instances (CPN207) | AWS re:Invent 2013 (20)

Minimum Viable Architecture - Good Enough is Good Enough
Minimum Viable Architecture - Good Enough is Good EnoughMinimum Viable Architecture - Good Enough is Good Enough
Minimum Viable Architecture - Good Enough is Good Enough
 
Winning strategies in Test Automation
Winning strategies in Test AutomationWinning strategies in Test Automation
Winning strategies in Test Automation
 
Software Engineering in Startups
Software Engineering in StartupsSoftware Engineering in Startups
Software Engineering in Startups
 
Getting your mobile test automation process in place - using Cucumber and Cal...
Getting your mobile test automation process in place - using Cucumber and Cal...Getting your mobile test automation process in place - using Cucumber and Cal...
Getting your mobile test automation process in place - using Cucumber and Cal...
 
Ensuring Performance in a Fast-Paced Environment (CMG 2014)
Ensuring Performance in a Fast-Paced Environment (CMG 2014)Ensuring Performance in a Fast-Paced Environment (CMG 2014)
Ensuring Performance in a Fast-Paced Environment (CMG 2014)
 
Applying Chaos Engineering to Build Resilient Serverless Applications
Applying Chaos Engineering to Build Resilient Serverless Applications Applying Chaos Engineering to Build Resilient Serverless Applications
Applying Chaos Engineering to Build Resilient Serverless Applications
 
Automated Exploratory Testing
Automated Exploratory TestingAutomated Exploratory Testing
Automated Exploratory Testing
 
Customized Scrum
Customized ScrumCustomized Scrum
Customized Scrum
 
Minimum Viable Architecture -- Good Enough is Good Enough in a Startup
Minimum Viable Architecture -- Good Enough is Good Enough in a StartupMinimum Viable Architecture -- Good Enough is Good Enough in a Startup
Minimum Viable Architecture -- Good Enough is Good Enough in a Startup
 
How Parse Built a Mobile Backend as a Service on AWS (MBL307) | AWS re:Invent...
How Parse Built a Mobile Backend as a Service on AWS (MBL307) | AWS re:Invent...How Parse Built a Mobile Backend as a Service on AWS (MBL307) | AWS re:Invent...
How Parse Built a Mobile Backend as a Service on AWS (MBL307) | AWS re:Invent...
 
Justin Ison
Justin IsonJustin Ison
Justin Ison
 
DevOps, what should you decide, when, why & how - Vinita Rathi
DevOps, what should you decide, when, why & how - Vinita RathiDevOps, what should you decide, when, why & how - Vinita Rathi
DevOps, what should you decide, when, why & how - Vinita Rathi
 
All about that reactive ui
All about that reactive uiAll about that reactive ui
All about that reactive ui
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
 
Minimal Viable Architecture - Silicon Slopes 2020
Minimal Viable Architecture - Silicon Slopes 2020Minimal Viable Architecture - Silicon Slopes 2020
Minimal Viable Architecture - Silicon Slopes 2020
 
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremDeploying your SaaS stack OnPrem
Deploying your SaaS stack OnPrem
 
Dev Ops without the Ops
Dev Ops without the OpsDev Ops without the Ops
Dev Ops without the Ops
 
Scaling a Mobile Web App to 100 Million Clients and Beyond (MBL302) | AWS re:...
Scaling a Mobile Web App to 100 Million Clients and Beyond (MBL302) | AWS re:...Scaling a Mobile Web App to 100 Million Clients and Beyond (MBL302) | AWS re:...
Scaling a Mobile Web App to 100 Million Clients and Beyond (MBL302) | AWS re:...
 
Software management for tech startups
Software management for tech startupsSoftware management for tech startups
Software management for tech startups
 
Stapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoStapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San Francisco
 

Más de 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
 

Más de 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
 

Último

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 

Último (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 

Re:Inventing your Innovation Cycle by Scaling Out with Spot Instances (CPN207) | AWS re:Invent 2013

  • 1. Choosing Our Spots How Tapjoy Saves with Amazon Spot Pricing ® Weston Jossey November 13th, 2013 © 2013 Amazon.com, Inc. and its affiliates. All rights reserved. May not be copied, modified, or distributed in whole or in part without the express consent of Amazon.com, Inc. Friday, November 15, 13
  • 3. Who Am I? • Engineer turned DevOps junkie • Multiple Areas of Focus • • • • Performance Cost Management & Reduction Efficiency As Needed Firefighter Friday, November 15, 13
  • 4. Tapjoy’s Challenge • Premier Mobile Ad Network Across iOS & Android • Global Network (435 Million Monthly Reach) • Diverse user base (54% Male, 46% Female) • Billions of requests per day • Growth requires iteration, experimentation, and massive scale • Small mistakes are magnified to millions of consumers instantly Friday, November 15, 13
  • 6. What Everyone Sees 1. Develop a killer product, hire more engineers 2. Expand product as fast as possible, gain market share 3. Iterate, grow, refine, scale... 4. #Profit Friday, November 15, 13
  • 7. What Everyone Forgets to Mention • Engineering is a game of tradeoffs. Fast growth comes at a price. • Testing and QA are often the first to lag behind. • Building quality test beds for engineers can be complicated. Friday, November 15, 13
  • 8. Food for Thought • Where are your bottlenecks in your development cycle? • How do you simulate production? Friday, November 15, 13
  • 9. Spot Instances: The Dremel of Engineering ® Friday, November 15, 13
  • 10. The Mindset Required • Engineer application level redundancy and fault tolerance. • Spread yourself amongst many zones, potentially even many regions. • Identify areas of required, not preferred, persistence. • Understand how your “neighbors” are utilizing your preferred instance type. Friday, November 15, 13
  • 11. Always Be Testing • Lots of engineering means... • Lots of code pushes • Lots of pull requests • Lots of automated tests to be run frequently to prevent regressions • Full test suites can take > 1 hour when run serially. • Can slow down the review process when changes require at minimum an hour lag for automated sign-off. Friday, November 15, 13
  • 12. Scale Horizontally With Spot Instances • Jenkins + Spot Instances • https://github.com/bwall/ec2-plugin • Go wide during business hours, scale back in the evenings. Automatically kicks online at 06:00ET • Workers scale horizontally to support dozens of simultaneous regression tests spread out over dozens of workers • Jenkins automatically guards against spot termination Friday, November 15, 13
  • 13. Tapinabox • Born from Tapjoy Hackathon • Quarterly hackathons to promote engineering growth and creativity. • Question Posed: “What if spinning up a fresh QA was as easy as launching a app server on Heroku?” • Goals • • • • Behaves, operates, and performs like production. Should be dead-simple to use. “Push a button, get a server.” Save money through improved quality and low cost to operate. End-To-End Product. No mocks, no stubs. Friday, November 15, 13
  • 14. Tapinabox Cont. • Fully automated build & deployment process tied to a developers Github account. • Simple web interface for creating, managing, and editing instances. • Quick collaboration with Product Managers, remote QA, and partner testing. • Fully run on Spot Instances. Friday, November 15, 13
  • 17. How we Built Tapinabox • Ruby on Rails • AWS CLI • Chef • Amazon EC2 Spot Instances (zone & region agnostic) • Tapjoy Slugs: Custom slug-deployments based on FPM https://github.com/jordansissel/fpm Friday, November 15, 13
  • 18. Pointers & Lessons Learned • Spot Instances can take a while to provision with a different workflow than a traditional on-demand model. • Very important to find quiet zones / regions based on your workload. • Pricing sometimes takes a back seat to reliability. What instance types have contention? • Guard against termination with adequate pricing, but don’t try and prevent it. Automation is key. The price will eventually fall. • Pick the right tool for the job. Don’t get greedy! Friday, November 15, 13
  • 19. Kudos • Tapjoy Automation Team • • • • • John Russell Chris Gerber JLo Adam Bell Hugh Barrigan Friday, November 15, 13
  • 21. Please give us your feedback on this presentation CPN207 As a thank you, we will select prize winners daily for completed surveys! Friday, November 15, 13 Thank You