SlideShare une entreprise Scribd logo
1  sur  79
Sudden Impact Designing LAMP Applications for High Loads
In this Presentation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Who am I? ,[object Object],[object Object],[object Object]
What is a Gaia Event? ,[object Object],[object Object],[object Object]
Example: Gaia Prom ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Example: Gaia Prom – Flash Hangouts
Example: Gaia Prom - Dance Game
What are we trying to do?
The Problem ,[object Object],[object Object],[object Object],[object Object],[object Object]
Possible Characteristics of a  High Load Web Application ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Our Example Gaia’s Halloween Hysteria Event ,[object Object],[object Object],[object Object],[object Object]
Choosing a Team
The Event Page
Forums / Battlegrounds
Attack / Aiding Another Player
Attacking / Aiding Another Player (cont…)
Preparing to Design an Optimized App or “ Predicting the Future for Fun and Profit”
Preparing to Design an Optimized App: Gathering Requirements & Use Cases ,[object Object],[object Object],[object Object]
Preparing to Design an Optimized App: Gathering Use Cases A Simple Example From the Event ,[object Object],[object Object],[object Object],[object Object]
Preparing to Design an Optimized App: Gathering Use Cases A More Complex Example From the Event ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Preparing to Design an Optimized App: Roughing the Data Structure ,[object Object],[object Object],[object Object]
Preparing to Design an Optimized App: Roughing the Data Structure Examples From the Event ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Preparing to Design an Optimized App: Roughing Your Interfaces ,[object Object],[object Object],[object Object],[object Object],[object Object]
Preparing to Design an Optimized App: Roughing Your Interfaces Examples From the Event Main Event Page Halloween_Player Data: Level Faction Current/Max Health Current/Max Energy Experience Points Attack/Defense Strength Halloween_Log Data: A list of the last 15 log entries User Data: A list of usernames for each user who created a log entry for this user Game Forum Map Link to Comic Link to Trick or Treating Link to How to Play  Action Select Page Halloween_Player Data: Energy of the attacker Time until next action Health of defender Halloween_Ability Data: A list of abilities available to  the attacker User Data: The username of the defender A button to initiate the action Forum HUD Halloween_Player Data: Level Faction Current/Max Health Current/Max Energy A list of 15 targets in that location User Data: The usernames of each user in the target list Buttons to attack/aid each enemy/ ally
Preparing to Design an Optimized App: Understand the Layers of Your Application ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Preparing to Design an Optimized App: Identify Involved Systems ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Preparing to Design an Optimized App: Identify Involved Systems Examples From the Event ,[object Object],[object Object],[object Object]
Preparing to Design an Optimized App: Estimating Potential Usage ,[object Object],[object Object],[object Object],[object Object],[object Object]
Preparing to Design an Optimized App: Ultimate Goal: Identify Potential Hotspots ,[object Object]
Preparing to Design an Optimized App: Identify Potential Hotpots Examples From the Event ,[object Object],[object Object]
Understanding The Layers of Your Application or “ Caramelizing the Electric Onion”
Understanding The Layers of Your Application: Overview Client Web Browser / Flash PHP / Web Servers Memcache Database
Understanding The Layers of Your Application: Overview Client Web Browser / Flash PHP / Web Servers Memcache Database
Understanding The Layers of Your Application: The Client ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Understanding The Layers of Your Application:   The Client Examples From the Event ,[object Object],[object Object],[object Object]
Understanding The Layers of Your Application: Overview Client Web Browser / Flash PHP / Web Servers Memcache Database
Understanding The Layers of Your Application:  PHP / Web Servers ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Understanding The Layers of Your Application:   PHP / Web Servers Examples From the Event ,[object Object],[object Object],[object Object]
Understanding The Layers of Your Application: Overview Client Web Browser / Flash PHP / Web Servers Memcache Database
Understanding The Layers of Your Application:  Memcache ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Understanding The Layers of Your Application: Overview Client Web Browser / Flash PHP / Web Servers Memcache Database
Understanding The Layers of Your Application:  Database ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Maximizing Memcache’s Potential or “ Why Haven’t I Been Using This For Years?”
A Quick Review of Memcache ,[object Object],[object Object],[object Object]
Caching Policies and You ,[object Object],[object Object]
Choosing a Caching Policy ,[object Object],[object Object],[object Object],[object Object]
Caching Policy #1: No Write Allocation
Caching Policy #1: No Write Allocation ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Caching Policy #1: No Write Allocation Examples from the Event ,[object Object],[object Object],[object Object],[object Object],[object Object]
Caching Policy #2: Delete Cache on Write
Caching Policy #2: Delete Cache on Write ,[object Object],[object Object],[object Object],[object Object],[object Object]
Caching Policy #2: Delete Cache on Write Examples from the Event ,[object Object],[object Object],[object Object],[object Object],[object Object]
Caching Policy #3: Write Through Cache
Caching Policy #3: Write Through Cache ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Caching Policy #3: Write Through Cache Examples from the Event ,[object Object],[object Object],[object Object],[object Object],[object Object]
Caching Policy #4: Write Behind Cache
Caching Policy #4: Write Behind Cache ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Caching Policy #4: Write Behind Cache Examples from the Event ,[object Object],[object Object],[object Object],[object Object],[object Object]
Good Practices for Caching ,[object Object],[object Object],[object Object],[object Object],[object Object]
Good Practices for Caching ,[object Object],[object Object],[object Object],[object Object]
Optimizing Your Data Structure
Getting Specific: Data Structure Documentation
Getting Specific: Good Practices with Data Structure ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Getting Specific: Good Practices with Data Structure ,[object Object],[object Object],[object Object],[object Object]
Getting Specific: Data Structure Documentation
Getting Specific: Data Structure Documentation ,[object Object],[object Object],[object Object],[object Object]
Getting Specific: Good Practices with Data Structure ,[object Object],[object Object],[object Object],[object Object]
More Examples of  Addressing Hotspots
Addressing Hotposts An Example from the Event Target Problem ,[object Object],[object Object],[object Object],SELECT * FROM halloween2008_player WHERE current_forum_id = $forum_id ORDER BY RAND() LIMIT 15;
Addressing Hotposts An Example from the Event Addressing the Target Problem ,[object Object],[object Object],[object Object]
Addressing Hotposts An Example from the Event Avatar Resave Problem ,[object Object],[object Object]
Addressing Hotposts An Example from the Event Addressing the Avatar Resave Problem ,[object Object],[object Object],[object Object]
Addressing Hotposts Don’t Keep Hotspots a Secret! ,[object Object],[object Object]
Bringing it All Together
Early Design ,[object Object],[object Object],[object Object]
Data Structure ,[object Object],[object Object],[object Object],[object Object]
Understand Your Environment ,[object Object],[object Object],[object Object]
Caching ,[object Object],[object Object]
 

Contenu connexe

En vedette

Simplification of train loading on bridges
Simplification of train loading on bridgesSimplification of train loading on bridges
Simplification of train loading on bridges
sanjay002
 
5th Day- Mahmoud Abfufouda
5th Day- Mahmoud Abfufouda5th Day- Mahmoud Abfufouda
5th Day- Mahmoud Abfufouda
MAHMOUD ABUFOUDA
 
BriefTHE EFFECT OF CREATED OPENING UNDER WORKING LOAD
BriefTHE EFFECT OF CREATED OPENING UNDER WORKING LOADBriefTHE EFFECT OF CREATED OPENING UNDER WORKING LOAD
BriefTHE EFFECT OF CREATED OPENING UNDER WORKING LOAD
michael mabrouk
 
retrofitting of existing rcc members Different strengthening techniques
retrofitting of existing rcc members Different strengthening techniquesretrofitting of existing rcc members Different strengthening techniques
retrofitting of existing rcc members Different strengthening techniques
suraj prasanna kumar
 

En vedette (15)

UN Habitat Report
UN Habitat ReportUN Habitat Report
UN Habitat Report
 
my presentation
my presentationmy presentation
my presentation
 
An overview of emerging trends in construction technologies
An overview of emerging trends in construction technologiesAn overview of emerging trends in construction technologies
An overview of emerging trends in construction technologies
 
Simplification of train loading on bridges
Simplification of train loading on bridgesSimplification of train loading on bridges
Simplification of train loading on bridges
 
Pre-cast Concrete Panel Use in Freeway Rehabilitation
Pre-cast Concrete Panel Use in Freeway RehabilitationPre-cast Concrete Panel Use in Freeway Rehabilitation
Pre-cast Concrete Panel Use in Freeway Rehabilitation
 
5th Day- Mahmoud Abfufouda
5th Day- Mahmoud Abfufouda5th Day- Mahmoud Abfufouda
5th Day- Mahmoud Abfufouda
 
BriefTHE EFFECT OF CREATED OPENING UNDER WORKING LOAD
BriefTHE EFFECT OF CREATED OPENING UNDER WORKING LOADBriefTHE EFFECT OF CREATED OPENING UNDER WORKING LOAD
BriefTHE EFFECT OF CREATED OPENING UNDER WORKING LOAD
 
Loads and forces
Loads and forcesLoads and forces
Loads and forces
 
Chapter 1 repair stratergies
Chapter 1 repair stratergiesChapter 1 repair stratergies
Chapter 1 repair stratergies
 
Bridge foundation and its loading system
Bridge foundation and its loading systemBridge foundation and its loading system
Bridge foundation and its loading system
 
4th day - Mahmoud Abfouda
4th day - Mahmoud Abfouda4th day - Mahmoud Abfouda
4th day - Mahmoud Abfouda
 
Loads acting on buildings
Loads  acting on buildingsLoads  acting on buildings
Loads acting on buildings
 
година виразного читання
година виразного читаннягодина виразного читання
година виразного читання
 
Bridge foundation
Bridge foundationBridge foundation
Bridge foundation
 
retrofitting of existing rcc members Different strengthening techniques
retrofitting of existing rcc members Different strengthening techniquesretrofitting of existing rcc members Different strengthening techniques
retrofitting of existing rcc members Different strengthening techniques
 

Similaire à Sudden Impact - Designing LAMP Applications for High Loads

1.Review news reports from a specific data breach. Choose a breach f.pdf
1.Review news reports from a specific data breach. Choose a breach f.pdf1.Review news reports from a specific data breach. Choose a breach f.pdf
1.Review news reports from a specific data breach. Choose a breach f.pdf
arihantpatna
 
Google cloud platform
Google cloud platformGoogle cloud platform
Google cloud platform
rajdeep
 

Similaire à Sudden Impact - Designing LAMP Applications for High Loads (20)

Designing the Call of Cthulhu app with Google App Engine
Designing the Call of Cthulhu app with Google App EngineDesigning the Call of Cthulhu app with Google App Engine
Designing the Call of Cthulhu app with Google App Engine
 
Web Server Primer
Web Server PrimerWeb Server Primer
Web Server Primer
 
Web Server Primer
Web Server PrimerWeb Server Primer
Web Server Primer
 
Big dataarchitecturesandecosystem+nosql
Big dataarchitecturesandecosystem+nosqlBig dataarchitecturesandecosystem+nosql
Big dataarchitecturesandecosystem+nosql
 
DevOpsDays Warsaw 2015: Zero-Friction Performance Instrumentation And Monitor...
DevOpsDays Warsaw 2015: Zero-Friction Performance Instrumentation And Monitor...DevOpsDays Warsaw 2015: Zero-Friction Performance Instrumentation And Monitor...
DevOpsDays Warsaw 2015: Zero-Friction Performance Instrumentation And Monitor...
 
Open source: Making connections by Sunny Pai
Open source: Making connections by Sunny PaiOpen source: Making connections by Sunny Pai
Open source: Making connections by Sunny Pai
 
Leveraging The Cloud In 2009
Leveraging The Cloud In 2009Leveraging The Cloud In 2009
Leveraging The Cloud In 2009
 
1.Review news reports from a specific data breach. Choose a breach f.pdf
1.Review news reports from a specific data breach. Choose a breach f.pdf1.Review news reports from a specific data breach. Choose a breach f.pdf
1.Review news reports from a specific data breach. Choose a breach f.pdf
 
Presemtation Tier Optimizations
Presemtation Tier OptimizationsPresemtation Tier Optimizations
Presemtation Tier Optimizations
 
Building & Leveraging White Database for Antivirus Testing
Building & Leveraging White Database for Antivirus TestingBuilding & Leveraging White Database for Antivirus Testing
Building & Leveraging White Database for Antivirus Testing
 
Google cloud platform
Google cloud platformGoogle cloud platform
Google cloud platform
 
Low/No Cost Software is it right for your business
Low/No Cost Software is it right for your businessLow/No Cost Software is it right for your business
Low/No Cost Software is it right for your business
 
Having Fun Building Web Applications (Day 1 Slides)
Having Fun Building Web Applications (Day 1 Slides)Having Fun Building Web Applications (Day 1 Slides)
Having Fun Building Web Applications (Day 1 Slides)
 
Fg b
Fg bFg b
Fg b
 
Android Development Basics
Android Development BasicsAndroid Development Basics
Android Development Basics
 
Monitoring as Software Validation
Monitoring as Software ValidationMonitoring as Software Validation
Monitoring as Software Validation
 
Android_ver_01
Android_ver_01Android_ver_01
Android_ver_01
 
Web Application Vulnerabilities
Web Application VulnerabilitiesWeb Application Vulnerabilities
Web Application Vulnerabilities
 
Introduction to Google App Engine with Python
Introduction to Google App Engine with PythonIntroduction to Google App Engine with Python
Introduction to Google App Engine with Python
 
Virtual Diary web application
Virtual Diary web application Virtual Diary web application
Virtual Diary web application
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Dernier (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Sudden Impact - Designing LAMP Applications for High Loads