Dealing with the chaos monkey

Slides:



Advertisements
Similar presentations
Google Android Introduction to Mobile Computing. Android is part of the build a better phone process Open Handset Alliance produces Android Comprises.
Advertisements

Dr. Bruce A. Scharlau, AHDIT, ES2002 E-Business Workshop AHDIT: Ad Hoc Data Interoperability Tool Dr. Bruce A. Scharlau Dept. of Computing Science University.
Bruce Scharlau, University of Aberdeen, 2012 Data storage options for mobiles Mobile Computing.
Bruce Scharlau, University of Aberdeen, 2010 Android and Location Mobile Computing Unless otherwise stated, images are from android sdk.
Bruce Scharlau, University of Aberdeen, 2008 RESTful Assessments.
Interest in the Windows Phone 7 platform is growing quickly and the need for apps is increasing faster still. However, not everything related to a consumer's.
LeadManager™- Internet Marketing Lead Management Solution May, 2009.
Gold Sponsors Bronze Sponsors Silver Sponsors Taking SharePoint to the Cloud Aaron Saikovski Readify – Software Solution Specialist.
Kentico CMS 5.5 R2 What’s New. Highlights Intranet Solution Document management package – WebDAV support – Project & task management – Document libraries.
Intro to SharePoint 2013 Architecture Liam Cleary.
Integrating The Datacenter OpalisRobot MOM Operator.
Chapter 4 Infrastructure as a Service (IaaS)
Cloud Computing PRESENTED BY- Rajat Dixit (rd2392)
Background Info The UK Mirror Service provides mirror copies of data and programs from many sources all over the world. This enables users in the UK to.
Cloud Computing Will Crowley Monica Lopez Jaimie Morrison.
Mgt 240 Lecture Website Construction: Software and Language Alternatives March 29, 2005.
Duncan Fraiser, Adam Gambrell, Lisa Schalk, Emily Williams
At the North of England Institute of Mining and Mechanical Engineers Library, Newcastle upon Tyne.
131 Agenda Overview Review Roles Lists Libraries Columns.
Boston Bootcamp April 27 th, 2013 Azure Websites Udaiappa Ramachandran ( Udai
MobeSys Technologies MobeSys – helping you overcome mobile technology challenges.
1Copyright © 2012, Oracle and/or its affiliates. All rights reserved. Insert Information Protection Policy Classification from Slide 8 Reporting from Contract.
Build a Free Website1 Build A Website For Free 2 ND Edition By Mark Bell.
JavaScript, Fourth Edition Chapter 12 Updating Web Pages with AJAX.
Lecture 6: Cloud Computing By D. Najla Al-Nabhan 1.
CIS 375—Web App Dev II Microsoft’s.NET. 2 Introduction to.NET Steve Ballmer (January 2000): Steve Ballmer "Delivering an Internet-based platform of Next.
Geographic Information Systems Cloud GIS. ► The use of computing resources (hardware and software) that are delivered as a service over the Internet ►
Module 7. Data Backups  Definitions: Protection vs. Backups vs. Archiving  Why plan for and execute data backups?  Considerations  Issues/Concerns.
Store, sync, and share your files
Exercises for Chapter 2: System models
Cloud Computing Characteristics A service provided by large internet-based specialised data centres that offers storage, processing and computer resources.
Putting it all together Dynamic Data Base Access Norman White Stern School of Business.
Copyright © 2006 TietoEnator Corporation Using Community Tools To Improve Team Work Magnus Einarsson.
{ Cloud computing. Exciting and relatively new technologies allow computing to be a part of our everyday lives. Cloud computing allows users to save their.
WSV Problem Background 3. Accelerated Protocols and Workloads 4. Deployment and Management 2. BranchCache Solution Modes 5. BranchCache Protocols.
Datalayer Notebook Allows Data Scientists to Play with Big Data, Build Innovative Models, and Share Results Easily on Microsoft Azure MICROSOFT AZURE ISV.
MidVision Enables Clients to Rent IBM WebSphere for Development, Test, and Peak Production Workloads in the Cloud on Microsoft Azure MICROSOFT AZURE ISV.
3/12/2013Computer Engg, IIT(BHU)1 CLOUD COMPUTING-1.
Exercises for Chapter 2: System models From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, © Pearson Education 2005.
+ Publishing Your First Post USING WORDPRESS. + A CMS (content management system) is an application that allows you to publish, edit, modify, organize,
With xTV, Quickly Build Your Enterprise.TV Network, a Single-Destination, Real-Time Stream of Information to Inform Customers, Employees, Partners & Investors.
Explore engage elevate Data Migration Without Tears Mike Feingold Empoint Ltd Tuesday 10th November 2015.
What Project Managers Need to Know About Cloud Computing Stacy Taylor President, Red Mountain Services
December 5, Up, Up, & Away! Second Annual Event 199 Attendees! (+60%) 2 Full Days! (+100%) 17 Sessions! (+240%) 17 Subscriber Presenters (+240%)
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
Amazon Web Services. Amazon Web Services (AWS) - robust, scalable and affordable infrastructure for cloud computing. This session is about:
Call-Center Agents, Customers Communicate More Conveniently with SMS Chat App COMPANY PROFILE: EARLY CONNECT Early Connect is a regional SaaS ISV founded.
A Seminar On. What is Cloud Computing? Distributed computing on internet Or delivery of computing service over the internet. Eg: Yahoo!, GMail, Hotmail-
Cloud Computing Presented By: Mark Jordan. Agenda Definition Examples Which is Better Future.
The Holmes Platform and Applications
Profound.js: The future of open source development on IBM i
Lecture 6: Cloud Computing
Amazon Web Services (aws)
API (Application Program Interface)
Viewbiquity HTML5 Tom Shafron Developer’s Blog CEO, Viewbiquity
Andrew McCombs March 10th, 2011
SMS MARKETING.
Advanced Security Architecture System Engineer Cisco: practice-questions.html.
Setup your Google Account on Kindle Fire Tablet.
Database-Driven Web Sites
What Do We Do? Managed IT services
Magento Enterprise cloud Edition had launched this year, and is a platform as a service environment designed for amazon web service and for magento 2.0.
Android Storage.
Winter 2016 (c) Ian Davis.
Tailor your SharePoint 2013 social layer according to your needs
Introduction to Servers
Last.Backend is a Continuous Delivery Platform for Developers and Dev Teams, Allowing Them to Manage and Deploy Applications Easier and Faster MICROSOFT.
Using the Cloud for Backup, Archiving & Disaster Recovery
Revision PowerPoint By Nicole Davidson.
Presentation transcript:

Dealing with the chaos monkey Mobile Computing Bruce Scharlau, University of Aberdeen, 2012

Bruce Scharlau, University of Aberdeen, 2012 Background You have large international service built on top of web services in ‘the cloud’, which you rely upon What happens to your service if they disappear? How will your customers respond? Bruce Scharlau, University of Aberdeen, 2012

We can place data elsewhere on the network Use a web service to store data elsewhere – save photos to flickr, files to some other app in the cloud. Can save files automatically, or at user discretion with time values, etc. (twitter, email apps, or photo capture) Bruce Scharlau, University of Aberdeen, 2012

Bruce Scharlau, University of Aberdeen, 2012 Amazon Web Services died for several days a few years ago: only one company who used them carried on while others suffered the outage Working on form online and lose the connection Work disconnected, and then sync device when ‘in contact’ Save state in a game Persistence lets you add ‘memory’ to the application Bruce Scharlau, University of Aberdeen, 2012

Netflix’s chaos monkey saved them They had built a service to create random outages of services they used. This forced them to provide a minimal service despite outages When Amazon went down, they were prepared Bruce Scharlau, University of Aberdeen, 2012

Feed & grow your chaos monkey How often will remote data be accessed? How quickly does remote data need to appear? How often will the data be updated/edited? Where will minimal data be stored? These answers will suggest solutions for you Bruce Scharlau, University of Aberdeen, 2012

Remote data may not be always needed Depending upon what you put on remote servers depends upon your own product and how it is deployed. These answers will suggest solutions for you Bruce Scharlau, University of Aberdeen, 2012

Remote data may not be instant If remote data is not expected to be instant, then slower servers of your own may suffice for interim periods These answers will suggest solutions for you Bruce Scharlau, University of Aberdeen, 2012

Remote data can be slowly edited Remote data can be staged so that current versions are local and thus can be used when remote services fail These answers will suggest solutions for you Bruce Scharlau, University of Aberdeen, 2012

Storing your own minimal data may be necessary Remote web services help, but are not the only route to success These answers will suggest solutions for you Bruce Scharlau, University of Aberdeen, 2012

All depends upon data storage needs How often will the data be accessed? How quickly does the data need to appear? How often will the data be updated/edited? Will the data be added to over time? Will the data be deleted? How will the data need to be used? These answers will suggest solutions for you Bruce Scharlau, University of Aberdeen, 2012

Use caches to manage data Caches come in different shapes and sizes and some can handle data before it’s written to db Some can hold data while db is changed, etc Bruce Scharlau, University of Aberdeen, 2012

Remove 3rd party dependencies Don’t make your app wait for third party responses before it replies to user Find way to use the 3rd party in asynchronous manner so your speed isn’t determined by their response time Bruce Scharlau, University of Aberdeen, 2012

Separate out functions, etc Keep functions in separate libraries to ease maintenance and development When everything is put in one component it becomes entangled and causes problems with response rates Bruce Scharlau, University of Aberdeen, 2012

Take this further and assume anything could fail Servers die, power fails, things fail. Build your system to withstand this and you’ll do fine You will end up with a resilient infrastructure Bruce Scharlau, University of Aberdeen, 2012

When code is ready then test https://github.com/Netflix/SimianArmy/wiki/Quick-Start-Guide will guide you Run automatic tests on code, but test code works by randomly stopping services, etc http://www.codinghorror.com/blog/2011/04/working-with-the-chaos-monkey.html http://techblog.netflix.com/search/label/chaos%20monkey Bruce Scharlau, University of Aberdeen, 2012

Run these tests when suitable staff are available Run these tests when staff expect them so that they can respond accordingly and learn from them Run them on production side so that responses can be organised accordingly Better now than at 3am at the weekend… Bruce Scharlau, University of Aberdeen, 2012

Must be run against production Chaos monkey must be run against production as this is where it counts and where nuances exist that can’t be replicated in test environments All of this fits into larger ‘devops’ approach to development http://www.ibm.com/developerworks/java/library/a-devops1/index.html Bruce Scharlau, University of Aberdeen, 2012

Mobile ticketing site example Tickets for purchase from many events Huge demand when tickets first released Unpredictable demand when events go viral Bruce Scharlau, University of Aberdeen, 2012