SlideShare a Scribd company logo
1 of 30
Download to read offline
Simple Tips to Improve Site
Performance
No Coding Required
Erik Webb
Manager, Cloud Engineering
Agenda
→ Introduction
→ Diagnosing Problems
→ Types of Caching
→ Configuring Drupal
→ Performance-related Tools
→ Acquia Cloud Features
About Me
→ Manager, Cloud Engineering
→ Previously Performance/
Infrastructure Lead in Professional
Services organization
→ Joined Acquia in March 2010
→ 8 years with Drupal
→ 10+ years with LAMP
Bad Performance Advice
→ Drupal is slow.
→ If it runs out of memory, give it more.
→ Don’t use Context/Views/Panels/module X.
→ If you don’t install X, your site will be slow.
→ You need more servers.
→ Caching will solve all of your problems.
Evaluating Modules
General Evaluation
→ Supported version(s)
→ Maintainer reputation
→ Total usage
→ Number of open issues
→ Usage change over time
Performance Evaluation
→ Record baseline before installation
→ Record usage immediately after installation
→ Use ongoing memory monitoring to correlate
→ Criteria: Frontend page load, scenario completion time,
server load
Questions to Ask
→  When does this module “run”?
§  Examples: Login, Content update, Periodically/cron
→  How does this module scale?
§  Examples: Per node, per user, per request
→  What happens if this module fails?
§  If this module fails, no user can login.
§  If this module fails, no content will have functioning slideshows.
→  Does my site care about performance?
§  Is my site visited entirely by anonymous users?
§  Is this site internal and low-traffic only?
→  Do I really need this module?
What to Look For
Identifying the Problem
→  When does it occur?
§  All pages? Anonymous and/or authenticated?
§  Only when saving content? Only when logging in?
§  Under heavy load? Random times during the day?
→  When did it start?
§  Avoid the “it feels faster/slower” problem
§  Record performance numbers
§  Maintain release notes (or retain logs)
→  Who is to blame?
§  Test against regression between features
§  Take note of any infrastructure changes
Where Problems Occur
→  Page building modules
§  Views and Panels
→  External web services
§  User logins
§  Any 3rd-party integration
→  Overall complexity
§  Total number of modules
§  Views within Panels within Panels within...
→  Misconfigured components
§  Default is uncached (for development)
§  Understand what is being cached
Managing Performance
→  Keep records of performance over time
§  Be analytical, don’t feel
§  Note any milestones of activity or feature development
§  Correlate improvements and regressions
→  Establish a performance metric
§  Set a level of acceptability
§  Example: 80% of pages should return in 500ms or render in 3s
→  Adopt a “Definition of Done” (DoD)
§  Agile concept - aspects needing satisfaction before completion
§  Performance is part of QA
→  Don’t hide behind infrastructure
§  Slow Drupal is cheap, hardware is not
Types of Caches
Application-level Caching
→ Move along, nothing to see here.
→ Not configurable
→ Should never result in “staleness”
→ Can only be enhanced by improving backend
→ Examples: Filter, Menu, Path, Filter (not FORM!)
Component-level Caching
→ Stores user-facing components
→ Best speedup for authenticated users
§  Limited effectiveness without more configuration
§  Mostly disabled by default
→ Varying degrees of contents, HTML to serialized objects
§  Some implementations more effective than others
→ Examples: Block, Views, Panels
Page-level Caching
→ Most efficient possible cache
§  Combine with reverse proxy, CDN
→ Only applicable for anonymous users*
→ Stored as full HTML
→ No Drupal bootstrap needed
Configuring Drupal
Performance Page
→  Use block caching*
§  Disabled by node access
§  Biggest speedup for auth
users
→  Using a reverse proxy?
§  Use “Expiration of cached
pages”
→  Aggregation/compression only
on production (settings.php)
§  $conf[‘preprocess_css’] = 1;
Fast 404
→ Added in Drupal 7.9 
→ Configured in
settings.php
→ Avoid performance hit
from 404 errors
Other Notes
→  Understand what Drupal does and does not cache
§  Helps understand when to troubleshoot
→  Don’t forget the frontend!
→  Do not enable “UI modules” on production
§  Unneeded memory usage
§  Examples: Field UI, Rules Admin, Views UI
→  Avoid Database Logging (if you have an alternative)
§  Examples: Syslog, Monolog
→  Unnoticed PHP errors slow down execution
§  Increase PHP logging on non-production environments
Performance-related Tools
Drupal Modules
→ Devel
§  Execution time and memory usage
§  Query logging
→ Memcache
§  Replace database caching with Memcached
§  In-memory cache, reduces DB load
→ Entity Cache
§  Stores loaded objects a.k.a. “entities” (users, nodes,
comments, etc.)
Drupal Modules
→ Views Litepager
§  Slow pagers on Views with large DB tables
→ Views Content Cache
§  Caches clear Views based on content changes rather than
expiration
§  Example: Clear a View display when a new “Article” node
is created
→ Panels Hash Cache/Panels Content Cache
§  Similar to Views Content Cache
Third-party Tools
→  Web optimization tools
§  SpriteMe
→  Web testing tools
§  WebPagetest.org
§  Google PageSpeed Online
→  Browser-based
§  Firebug/Web Inspector
§  YSlow!
§  Google PageSpeed
→  SaaS products
§  New Relic/Tracelytics
§  Blazemeter
Acquia Cloud Features
h"ps://docs.acquia.com/cloud/arch	
  
Acquia Insight
Log Streaming
→ Real-time logs
→ Filter by source or
content


→ acquia/logstream on
GitHub
Uptime Monitoring
Questions?
@erikwebb on Twitter

More Related Content

What's hot

The Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devicesThe Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devicesWesley Hales
 
Owning Web Performance with PhantomJS 2 - Fluent 2016
Owning Web Performance with PhantomJS 2 - Fluent 2016Owning Web Performance with PhantomJS 2 - Fluent 2016
Owning Web Performance with PhantomJS 2 - Fluent 2016Wesley Hales
 
Web performance testing with web driver
Web performance testing with web driverWeb performance testing with web driver
Web performance testing with web driverMichael Klepikov
 
Testing Single Page Webapp
Testing Single Page WebappTesting Single Page Webapp
Testing Single Page WebappAkshay Mathur
 
Owning Web Performance
Owning Web PerformanceOwning Web Performance
Owning Web PerformanceWesley Hales
 
Frontend architecture design for large(r) team final
Frontend architecture design for large(r) team   finalFrontend architecture design for large(r) team   final
Frontend architecture design for large(r) team finalChadchapol Vittavutkarnvej
 
Component based Progress Programming
Component based Progress ProgrammingComponent based Progress Programming
Component based Progress ProgrammingValentin Duricu
 
Between a SPA and a JAMstack: Building Web Sites with Nuxt/Vue, Strapi and wh...
Between a SPA and a JAMstack: Building Web Sites with Nuxt/Vue, Strapi and wh...Between a SPA and a JAMstack: Building Web Sites with Nuxt/Vue, Strapi and wh...
Between a SPA and a JAMstack: Building Web Sites with Nuxt/Vue, Strapi and wh...Adam Khan
 
The Dark Side of Single Page Applications
The Dark Side of Single Page ApplicationsThe Dark Side of Single Page Applications
The Dark Side of Single Page ApplicationsDor Kalev
 
Developing JavaScript Widgets
Developing JavaScript WidgetsDeveloping JavaScript Widgets
Developing JavaScript WidgetsBob German
 
The Future of Database Development
The Future of Database DevelopmentThe Future of Database Development
The Future of Database DevelopmentSteve Jones
 
Capybara-Webkit
Capybara-WebkitCapybara-Webkit
Capybara-Webkitbostonrb
 
Improving Drupal Performances
Improving Drupal PerformancesImproving Drupal Performances
Improving Drupal PerformancesVladimir Ilic
 
From nothing to a video under 2 seconds / Mikhail Sychev (YouTube)
From nothing to a video under 2 seconds / Mikhail Sychev  (YouTube)From nothing to a video under 2 seconds / Mikhail Sychev  (YouTube)
From nothing to a video under 2 seconds / Mikhail Sychev (YouTube)Ontico
 
React Walk-Thru - Santa Cruz JS, May 2015
React Walk-Thru - Santa Cruz JS, May 2015React Walk-Thru - Santa Cruz JS, May 2015
React Walk-Thru - Santa Cruz JS, May 2015Simon Sturmer
 
jQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and FuturejQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and FutureRichard Worth
 

What's hot (20)

The Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devicesThe Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devices
 
Kickstart Jpa
Kickstart JpaKickstart Jpa
Kickstart Jpa
 
Owning Web Performance with PhantomJS 2 - Fluent 2016
Owning Web Performance with PhantomJS 2 - Fluent 2016Owning Web Performance with PhantomJS 2 - Fluent 2016
Owning Web Performance with PhantomJS 2 - Fluent 2016
 
Web performance testing with web driver
Web performance testing with web driverWeb performance testing with web driver
Web performance testing with web driver
 
Testing Single Page Webapp
Testing Single Page WebappTesting Single Page Webapp
Testing Single Page Webapp
 
Owning Web Performance
Owning Web PerformanceOwning Web Performance
Owning Web Performance
 
Frontend architecture design for large(r) team final
Frontend architecture design for large(r) team   finalFrontend architecture design for large(r) team   final
Frontend architecture design for large(r) team final
 
Component based Progress Programming
Component based Progress ProgrammingComponent based Progress Programming
Component based Progress Programming
 
MEAN Stack
MEAN StackMEAN Stack
MEAN Stack
 
Between a SPA and a JAMstack: Building Web Sites with Nuxt/Vue, Strapi and wh...
Between a SPA and a JAMstack: Building Web Sites with Nuxt/Vue, Strapi and wh...Between a SPA and a JAMstack: Building Web Sites with Nuxt/Vue, Strapi and wh...
Between a SPA and a JAMstack: Building Web Sites with Nuxt/Vue, Strapi and wh...
 
The Dark Side of Single Page Applications
The Dark Side of Single Page ApplicationsThe Dark Side of Single Page Applications
The Dark Side of Single Page Applications
 
Developing JavaScript Widgets
Developing JavaScript WidgetsDeveloping JavaScript Widgets
Developing JavaScript Widgets
 
The Future of Database Development
The Future of Database DevelopmentThe Future of Database Development
The Future of Database Development
 
Capybara-Webkit
Capybara-WebkitCapybara-Webkit
Capybara-Webkit
 
Improving Drupal Performances
Improving Drupal PerformancesImproving Drupal Performances
Improving Drupal Performances
 
From nothing to a video under 2 seconds / Mikhail Sychev (YouTube)
From nothing to a video under 2 seconds / Mikhail Sychev  (YouTube)From nothing to a video under 2 seconds / Mikhail Sychev  (YouTube)
From nothing to a video under 2 seconds / Mikhail Sychev (YouTube)
 
Let's server your Data
Let's server your DataLet's server your Data
Let's server your Data
 
React Walk-Thru - Santa Cruz JS, May 2015
React Walk-Thru - Santa Cruz JS, May 2015React Walk-Thru - Santa Cruz JS, May 2015
React Walk-Thru - Santa Cruz JS, May 2015
 
Mean stack
Mean stackMean stack
Mean stack
 
jQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and FuturejQuery 1.9 and 2.0 - Present and Future
jQuery 1.9 and 2.0 - Present and Future
 

Viewers also liked

Load Testing & Drupal 8: What You Need to Do to Ensure a Smooth Launch
Load Testing & Drupal 8: What You Need to Do to Ensure a Smooth LaunchLoad Testing & Drupal 8: What You Need to Do to Ensure a Smooth Launch
Load Testing & Drupal 8: What You Need to Do to Ensure a Smooth LaunchAcquia
 
Isobar Digital Transformation 3.25.15
Isobar Digital Transformation 3.25.15Isobar Digital Transformation 3.25.15
Isobar Digital Transformation 3.25.15Acquia
 
Digital Transformation Tour: Montreal
Digital Transformation Tour: Montreal Digital Transformation Tour: Montreal
Digital Transformation Tour: Montreal Acquia
 
An Inside Look: Acquia Certified Drupal Site Builder Exam
An Inside Look: Acquia Certified Drupal Site Builder ExamAn Inside Look: Acquia Certified Drupal Site Builder Exam
An Inside Look: Acquia Certified Drupal Site Builder ExamAcquia
 
Make Your Site Faster: How to Improve Front-End Performance Strategy
Make Your Site Faster: How to Improve Front-End Performance StrategyMake Your Site Faster: How to Improve Front-End Performance Strategy
Make Your Site Faster: How to Improve Front-End Performance StrategyAcquia
 
Acquia Boston Digital Transformation 3/25/15
Acquia Boston Digital Transformation 3/25/15Acquia Boston Digital Transformation 3/25/15
Acquia Boston Digital Transformation 3/25/15Acquia
 
Acquia partner webinar_canada
Acquia partner webinar_canadaAcquia partner webinar_canada
Acquia partner webinar_canadaAcquia
 
Load testing housekeeping_newtemplate_q12015
Load testing housekeeping_newtemplate_q12015Load testing housekeeping_newtemplate_q12015
Load testing housekeeping_newtemplate_q12015Acquia
 
Start Here: How to Prepare for Your Drupal 8 Journey
Start Here: How to Prepare for Your Drupal 8 JourneyStart Here: How to Prepare for Your Drupal 8 Journey
Start Here: How to Prepare for Your Drupal 8 JourneyAcquia
 
Make Your Site Faster: How to Improve Front-End Performance Strategy
Make Your Site Faster: How to Improve Front-End Performance StrategyMake Your Site Faster: How to Improve Front-End Performance Strategy
Make Your Site Faster: How to Improve Front-End Performance StrategyAcquia
 
Acquia webinar 3 11 15 v3 (2)
Acquia webinar 3 11 15 v3 (2)Acquia webinar 3 11 15 v3 (2)
Acquia webinar 3 11 15 v3 (2)Acquia
 
The Big Reverse of the Web
The Big Reverse of the WebThe Big Reverse of the Web
The Big Reverse of the WebAcquia
 
An Inside Look: Acquia Certified Drupal Site Builder Exam
An Inside Look: Acquia Certified Drupal Site Builder ExamAn Inside Look: Acquia Certified Drupal Site Builder Exam
An Inside Look: Acquia Certified Drupal Site Builder ExamAcquia
 
How to Select Modules for New Drupal Users
How to Select Modules for New Drupal UsersHow to Select Modules for New Drupal Users
How to Select Modules for New Drupal UsersAcquia
 
Drupal 8 Multilingual Site Building Hacks
Drupal 8 Multilingual Site Building HacksDrupal 8 Multilingual Site Building Hacks
Drupal 8 Multilingual Site Building HacksAcquia
 
Certification webinar 201508
Certification webinar 201508Certification webinar 201508
Certification webinar 201508Acquia
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Acquia
 

Viewers also liked (17)

Load Testing & Drupal 8: What You Need to Do to Ensure a Smooth Launch
Load Testing & Drupal 8: What You Need to Do to Ensure a Smooth LaunchLoad Testing & Drupal 8: What You Need to Do to Ensure a Smooth Launch
Load Testing & Drupal 8: What You Need to Do to Ensure a Smooth Launch
 
Isobar Digital Transformation 3.25.15
Isobar Digital Transformation 3.25.15Isobar Digital Transformation 3.25.15
Isobar Digital Transformation 3.25.15
 
Digital Transformation Tour: Montreal
Digital Transformation Tour: Montreal Digital Transformation Tour: Montreal
Digital Transformation Tour: Montreal
 
An Inside Look: Acquia Certified Drupal Site Builder Exam
An Inside Look: Acquia Certified Drupal Site Builder ExamAn Inside Look: Acquia Certified Drupal Site Builder Exam
An Inside Look: Acquia Certified Drupal Site Builder Exam
 
Make Your Site Faster: How to Improve Front-End Performance Strategy
Make Your Site Faster: How to Improve Front-End Performance StrategyMake Your Site Faster: How to Improve Front-End Performance Strategy
Make Your Site Faster: How to Improve Front-End Performance Strategy
 
Acquia Boston Digital Transformation 3/25/15
Acquia Boston Digital Transformation 3/25/15Acquia Boston Digital Transformation 3/25/15
Acquia Boston Digital Transformation 3/25/15
 
Acquia partner webinar_canada
Acquia partner webinar_canadaAcquia partner webinar_canada
Acquia partner webinar_canada
 
Load testing housekeeping_newtemplate_q12015
Load testing housekeeping_newtemplate_q12015Load testing housekeeping_newtemplate_q12015
Load testing housekeeping_newtemplate_q12015
 
Start Here: How to Prepare for Your Drupal 8 Journey
Start Here: How to Prepare for Your Drupal 8 JourneyStart Here: How to Prepare for Your Drupal 8 Journey
Start Here: How to Prepare for Your Drupal 8 Journey
 
Make Your Site Faster: How to Improve Front-End Performance Strategy
Make Your Site Faster: How to Improve Front-End Performance StrategyMake Your Site Faster: How to Improve Front-End Performance Strategy
Make Your Site Faster: How to Improve Front-End Performance Strategy
 
Acquia webinar 3 11 15 v3 (2)
Acquia webinar 3 11 15 v3 (2)Acquia webinar 3 11 15 v3 (2)
Acquia webinar 3 11 15 v3 (2)
 
The Big Reverse of the Web
The Big Reverse of the WebThe Big Reverse of the Web
The Big Reverse of the Web
 
An Inside Look: Acquia Certified Drupal Site Builder Exam
An Inside Look: Acquia Certified Drupal Site Builder ExamAn Inside Look: Acquia Certified Drupal Site Builder Exam
An Inside Look: Acquia Certified Drupal Site Builder Exam
 
How to Select Modules for New Drupal Users
How to Select Modules for New Drupal UsersHow to Select Modules for New Drupal Users
How to Select Modules for New Drupal Users
 
Drupal 8 Multilingual Site Building Hacks
Drupal 8 Multilingual Site Building HacksDrupal 8 Multilingual Site Building Hacks
Drupal 8 Multilingual Site Building Hacks
 
Certification webinar 201508
Certification webinar 201508Certification webinar 201508
Certification webinar 201508
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8
 

Similar to Simple Tips to Improve Site Performance (No Coding Required!)

Plain english guide to drupal 8 criticals
Plain english guide to drupal 8 criticalsPlain english guide to drupal 8 criticals
Plain english guide to drupal 8 criticalsAngela Byron
 
Instant developer onboarding with self contained repositories
Instant developer onboarding with self contained repositoriesInstant developer onboarding with self contained repositories
Instant developer onboarding with self contained repositoriesYshay Yaacobi
 
Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Jess Coburn
 
Drupal Performance : DrupalCamp North
Drupal Performance : DrupalCamp NorthDrupal Performance : DrupalCamp North
Drupal Performance : DrupalCamp NorthPhilip Norton
 
Take your drupal sites offline
Take your drupal sites offlineTake your drupal sites offline
Take your drupal sites offlineChris Ward
 
Migrating to Drupal 8: How to Migrate Your Content and Minimize the Risks
Migrating to Drupal 8: How to Migrate Your Content and Minimize the RisksMigrating to Drupal 8: How to Migrate Your Content and Minimize the Risks
Migrating to Drupal 8: How to Migrate Your Content and Minimize the RisksAcquia
 
Drupal 8 - Build Week Update
Drupal 8 - Build Week UpdateDrupal 8 - Build Week Update
Drupal 8 - Build Week UpdateAngela Byron
 
SOUG_Deployment__Automation_DB
SOUG_Deployment__Automation_DBSOUG_Deployment__Automation_DB
SOUG_Deployment__Automation_DBUniFabric
 
Becoming A Drupal Master Builder
Becoming A Drupal Master BuilderBecoming A Drupal Master Builder
Becoming A Drupal Master BuilderPhilip Norton
 
Pure Speed Drupal 4 Gov talk
Pure Speed Drupal 4 Gov talkPure Speed Drupal 4 Gov talk
Pure Speed Drupal 4 Gov talkBryan Ollendyke
 
SynapseIndia drupal presentation on drupal info
SynapseIndia drupal  presentation on drupal infoSynapseIndia drupal  presentation on drupal info
SynapseIndia drupal presentation on drupal infoSynapseindiappsdevelopment
 
Applied progressive decoupling weather.com, angular, and drupal
Applied progressive decoupling  weather.com, angular, and drupalApplied progressive decoupling  weather.com, angular, and drupal
Applied progressive decoupling weather.com, angular, and drupalAcquia
 
Front-End Modernization for Mortals
Front-End Modernization for MortalsFront-End Modernization for Mortals
Front-End Modernization for Mortalscgack
 
Front end-modernization
Front end-modernizationFront end-modernization
Front end-modernizationdevObjective
 
SQLite3
SQLite3SQLite3
SQLite3cltru
 
HTML, CSS & Javascript Architecture (extended version) - Jan Kraus
HTML, CSS & Javascript Architecture (extended version) - Jan KrausHTML, CSS & Javascript Architecture (extended version) - Jan Kraus
HTML, CSS & Javascript Architecture (extended version) - Jan KrausWomen in Technology Poland
 
Drupal 7 performance and optimization
Drupal 7 performance and optimizationDrupal 7 performance and optimization
Drupal 7 performance and optimizationShafqat Hussain
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalabilityTwinbit
 

Similar to Simple Tips to Improve Site Performance (No Coding Required!) (20)

Plain english guide to drupal 8 criticals
Plain english guide to drupal 8 criticalsPlain english guide to drupal 8 criticals
Plain english guide to drupal 8 criticals
 
Instant developer onboarding with self contained repositories
Instant developer onboarding with self contained repositoriesInstant developer onboarding with self contained repositories
Instant developer onboarding with self contained repositories
 
Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11Orlando DNN Usergroup Pres 12/06/11
Orlando DNN Usergroup Pres 12/06/11
 
Drupal Performance : DrupalCamp North
Drupal Performance : DrupalCamp NorthDrupal Performance : DrupalCamp North
Drupal Performance : DrupalCamp North
 
Take your drupal sites offline
Take your drupal sites offlineTake your drupal sites offline
Take your drupal sites offline
 
Migrating to Drupal 8: How to Migrate Your Content and Minimize the Risks
Migrating to Drupal 8: How to Migrate Your Content and Minimize the RisksMigrating to Drupal 8: How to Migrate Your Content and Minimize the Risks
Migrating to Drupal 8: How to Migrate Your Content and Minimize the Risks
 
Drupal 8 - Build Week Update
Drupal 8 - Build Week UpdateDrupal 8 - Build Week Update
Drupal 8 - Build Week Update
 
SOUG_Deployment__Automation_DB
SOUG_Deployment__Automation_DBSOUG_Deployment__Automation_DB
SOUG_Deployment__Automation_DB
 
Becoming A Drupal Master Builder
Becoming A Drupal Master BuilderBecoming A Drupal Master Builder
Becoming A Drupal Master Builder
 
Pure Speed Drupal 4 Gov talk
Pure Speed Drupal 4 Gov talkPure Speed Drupal 4 Gov talk
Pure Speed Drupal 4 Gov talk
 
SynapseIndia drupal presentation on drupal info
SynapseIndia drupal  presentation on drupal infoSynapseIndia drupal  presentation on drupal info
SynapseIndia drupal presentation on drupal info
 
Applied progressive decoupling weather.com, angular, and drupal
Applied progressive decoupling  weather.com, angular, and drupalApplied progressive decoupling  weather.com, angular, and drupal
Applied progressive decoupling weather.com, angular, and drupal
 
Front-End Modernization for Mortals
Front-End Modernization for MortalsFront-End Modernization for Mortals
Front-End Modernization for Mortals
 
Front end-modernization
Front end-modernizationFront end-modernization
Front end-modernization
 
Front end-modernization
Front end-modernizationFront end-modernization
Front end-modernization
 
SQLite3
SQLite3SQLite3
SQLite3
 
HTML, CSS & Javascript Architecture (extended version) - Jan Kraus
HTML, CSS & Javascript Architecture (extended version) - Jan KrausHTML, CSS & Javascript Architecture (extended version) - Jan Kraus
HTML, CSS & Javascript Architecture (extended version) - Jan Kraus
 
Drupal 7 performance and optimization
Drupal 7 performance and optimizationDrupal 7 performance and optimization
Drupal 7 performance and optimization
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalability
 
DDD with Behat
DDD with BehatDDD with Behat
DDD with Behat
 

More from Acquia

Acquia_Adcetera Webinar_Marketing Automation.pdf
Acquia_Adcetera Webinar_Marketing Automation.pdfAcquia_Adcetera Webinar_Marketing Automation.pdf
Acquia_Adcetera Webinar_Marketing Automation.pdfAcquia
 
Acquia Webinar Deck - 9_13 .pdf
Acquia Webinar Deck - 9_13 .pdfAcquia Webinar Deck - 9_13 .pdf
Acquia Webinar Deck - 9_13 .pdfAcquia
 
Taking Your Multi-Site Management at Scale to the Next Level
Taking Your Multi-Site Management at Scale to the Next LevelTaking Your Multi-Site Management at Scale to the Next Level
Taking Your Multi-Site Management at Scale to the Next LevelAcquia
 
CDP for Retail Webinar with Appnovation - Q2 2022.pdf
CDP for Retail Webinar with Appnovation - Q2 2022.pdfCDP for Retail Webinar with Appnovation - Q2 2022.pdf
CDP for Retail Webinar with Appnovation - Q2 2022.pdfAcquia
 
May Partner Bootcamp 2022
May Partner Bootcamp 2022May Partner Bootcamp 2022
May Partner Bootcamp 2022Acquia
 
April Partner Bootcamp 2022
April Partner Bootcamp 2022April Partner Bootcamp 2022
April Partner Bootcamp 2022Acquia
 
How to Unify Brand Experience: A Hootsuite Story
How to Unify Brand Experience: A Hootsuite Story How to Unify Brand Experience: A Hootsuite Story
How to Unify Brand Experience: A Hootsuite Story Acquia
 
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CXUsing Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CXAcquia
 
Improve Code Quality and Time to Market: 100% Cloud-Based Development Workflow
Improve Code Quality and Time to Market: 100% Cloud-Based Development WorkflowImprove Code Quality and Time to Market: 100% Cloud-Based Development Workflow
Improve Code Quality and Time to Market: 100% Cloud-Based Development WorkflowAcquia
 
September Partner Bootcamp
September Partner BootcampSeptember Partner Bootcamp
September Partner BootcampAcquia
 
August partner bootcamp
August partner bootcampAugust partner bootcamp
August partner bootcampAcquia
 
July 2021 Partner Bootcamp
July  2021 Partner BootcampJuly  2021 Partner Bootcamp
July 2021 Partner BootcampAcquia
 
May Partner Bootcamp
May Partner BootcampMay Partner Bootcamp
May Partner BootcampAcquia
 
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASYDRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASYAcquia
 
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead MachineWork While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead MachineAcquia
 
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B LeadsAcquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B LeadsAcquia
 
April partner bootcamp deck cookieless future
April partner bootcamp deck  cookieless futureApril partner bootcamp deck  cookieless future
April partner bootcamp deck cookieless futureAcquia
 
How to enhance cx through personalised, automated solutions
How to enhance cx through personalised, automated solutionsHow to enhance cx through personalised, automated solutions
How to enhance cx through personalised, automated solutionsAcquia
 
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...Acquia
 
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021Acquia
 

More from Acquia (20)

Acquia_Adcetera Webinar_Marketing Automation.pdf
Acquia_Adcetera Webinar_Marketing Automation.pdfAcquia_Adcetera Webinar_Marketing Automation.pdf
Acquia_Adcetera Webinar_Marketing Automation.pdf
 
Acquia Webinar Deck - 9_13 .pdf
Acquia Webinar Deck - 9_13 .pdfAcquia Webinar Deck - 9_13 .pdf
Acquia Webinar Deck - 9_13 .pdf
 
Taking Your Multi-Site Management at Scale to the Next Level
Taking Your Multi-Site Management at Scale to the Next LevelTaking Your Multi-Site Management at Scale to the Next Level
Taking Your Multi-Site Management at Scale to the Next Level
 
CDP for Retail Webinar with Appnovation - Q2 2022.pdf
CDP for Retail Webinar with Appnovation - Q2 2022.pdfCDP for Retail Webinar with Appnovation - Q2 2022.pdf
CDP for Retail Webinar with Appnovation - Q2 2022.pdf
 
May Partner Bootcamp 2022
May Partner Bootcamp 2022May Partner Bootcamp 2022
May Partner Bootcamp 2022
 
April Partner Bootcamp 2022
April Partner Bootcamp 2022April Partner Bootcamp 2022
April Partner Bootcamp 2022
 
How to Unify Brand Experience: A Hootsuite Story
How to Unify Brand Experience: A Hootsuite Story How to Unify Brand Experience: A Hootsuite Story
How to Unify Brand Experience: A Hootsuite Story
 
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CXUsing Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
 
Improve Code Quality and Time to Market: 100% Cloud-Based Development Workflow
Improve Code Quality and Time to Market: 100% Cloud-Based Development WorkflowImprove Code Quality and Time to Market: 100% Cloud-Based Development Workflow
Improve Code Quality and Time to Market: 100% Cloud-Based Development Workflow
 
September Partner Bootcamp
September Partner BootcampSeptember Partner Bootcamp
September Partner Bootcamp
 
August partner bootcamp
August partner bootcampAugust partner bootcamp
August partner bootcamp
 
July 2021 Partner Bootcamp
July  2021 Partner BootcampJuly  2021 Partner Bootcamp
July 2021 Partner Bootcamp
 
May Partner Bootcamp
May Partner BootcampMay Partner Bootcamp
May Partner Bootcamp
 
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASYDRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
 
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead MachineWork While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
 
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B LeadsAcquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
 
April partner bootcamp deck cookieless future
April partner bootcamp deck  cookieless futureApril partner bootcamp deck  cookieless future
April partner bootcamp deck cookieless future
 
How to enhance cx through personalised, automated solutions
How to enhance cx through personalised, automated solutionsHow to enhance cx through personalised, automated solutions
How to enhance cx through personalised, automated solutions
 
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
 
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
 

Recently uploaded

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...DianaGray10
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
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...Miguel Araújo
 
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 CVKhem
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
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 2024The Digital Insurer
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
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?Igalia
 
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 TerraformAndrey Devyatkin
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
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...apidays
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 

Recently uploaded (20)

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...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
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...
 
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
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
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
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
+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...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
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?
 
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
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Simple Tips to Improve Site Performance (No Coding Required!)

  • 1. Simple Tips to Improve Site Performance No Coding Required Erik Webb Manager, Cloud Engineering
  • 2. Agenda → Introduction → Diagnosing Problems → Types of Caching → Configuring Drupal → Performance-related Tools → Acquia Cloud Features
  • 3. About Me → Manager, Cloud Engineering → Previously Performance/ Infrastructure Lead in Professional Services organization → Joined Acquia in March 2010 → 8 years with Drupal → 10+ years with LAMP
  • 4. Bad Performance Advice → Drupal is slow. → If it runs out of memory, give it more. → Don’t use Context/Views/Panels/module X. → If you don’t install X, your site will be slow. → You need more servers. → Caching will solve all of your problems.
  • 6. General Evaluation → Supported version(s) → Maintainer reputation → Total usage → Number of open issues → Usage change over time
  • 7. Performance Evaluation → Record baseline before installation → Record usage immediately after installation → Use ongoing memory monitoring to correlate → Criteria: Frontend page load, scenario completion time, server load
  • 8. Questions to Ask →  When does this module “run”? §  Examples: Login, Content update, Periodically/cron →  How does this module scale? §  Examples: Per node, per user, per request →  What happens if this module fails? §  If this module fails, no user can login. §  If this module fails, no content will have functioning slideshows. →  Does my site care about performance? §  Is my site visited entirely by anonymous users? §  Is this site internal and low-traffic only? →  Do I really need this module?
  • 10. Identifying the Problem →  When does it occur? §  All pages? Anonymous and/or authenticated? §  Only when saving content? Only when logging in? §  Under heavy load? Random times during the day? →  When did it start? §  Avoid the “it feels faster/slower” problem §  Record performance numbers §  Maintain release notes (or retain logs) →  Who is to blame? §  Test against regression between features §  Take note of any infrastructure changes
  • 11. Where Problems Occur →  Page building modules §  Views and Panels →  External web services §  User logins §  Any 3rd-party integration →  Overall complexity §  Total number of modules §  Views within Panels within Panels within... →  Misconfigured components §  Default is uncached (for development) §  Understand what is being cached
  • 12. Managing Performance →  Keep records of performance over time §  Be analytical, don’t feel §  Note any milestones of activity or feature development §  Correlate improvements and regressions →  Establish a performance metric §  Set a level of acceptability §  Example: 80% of pages should return in 500ms or render in 3s →  Adopt a “Definition of Done” (DoD) §  Agile concept - aspects needing satisfaction before completion §  Performance is part of QA →  Don’t hide behind infrastructure §  Slow Drupal is cheap, hardware is not
  • 14. Application-level Caching → Move along, nothing to see here. → Not configurable → Should never result in “staleness” → Can only be enhanced by improving backend → Examples: Filter, Menu, Path, Filter (not FORM!)
  • 15. Component-level Caching → Stores user-facing components → Best speedup for authenticated users §  Limited effectiveness without more configuration §  Mostly disabled by default → Varying degrees of contents, HTML to serialized objects §  Some implementations more effective than others → Examples: Block, Views, Panels
  • 16. Page-level Caching → Most efficient possible cache §  Combine with reverse proxy, CDN → Only applicable for anonymous users* → Stored as full HTML → No Drupal bootstrap needed
  • 18. Performance Page →  Use block caching* §  Disabled by node access §  Biggest speedup for auth users →  Using a reverse proxy? §  Use “Expiration of cached pages” →  Aggregation/compression only on production (settings.php) §  $conf[‘preprocess_css’] = 1;
  • 19. Fast 404 → Added in Drupal 7.9 → Configured in settings.php → Avoid performance hit from 404 errors
  • 20. Other Notes →  Understand what Drupal does and does not cache §  Helps understand when to troubleshoot →  Don’t forget the frontend! →  Do not enable “UI modules” on production §  Unneeded memory usage §  Examples: Field UI, Rules Admin, Views UI →  Avoid Database Logging (if you have an alternative) §  Examples: Syslog, Monolog →  Unnoticed PHP errors slow down execution §  Increase PHP logging on non-production environments
  • 22. Drupal Modules → Devel §  Execution time and memory usage §  Query logging → Memcache §  Replace database caching with Memcached §  In-memory cache, reduces DB load → Entity Cache §  Stores loaded objects a.k.a. “entities” (users, nodes, comments, etc.)
  • 23. Drupal Modules → Views Litepager §  Slow pagers on Views with large DB tables → Views Content Cache §  Caches clear Views based on content changes rather than expiration §  Example: Clear a View display when a new “Article” node is created → Panels Hash Cache/Panels Content Cache §  Similar to Views Content Cache
  • 24. Third-party Tools →  Web optimization tools §  SpriteMe →  Web testing tools §  WebPagetest.org §  Google PageSpeed Online →  Browser-based §  Firebug/Web Inspector §  YSlow! §  Google PageSpeed →  SaaS products §  New Relic/Tracelytics §  Blazemeter
  • 28. Log Streaming → Real-time logs → Filter by source or content
 → acquia/logstream on GitHub