SlideShare une entreprise Scribd logo
1  sur  26
Télécharger pour lire hors ligne
15 / 03 / 2015 - Drupal Camp Cluj 2015
Make your Drupal site perform
Like an athlete
Gabriel
Ungureanu
CEO @ AG Prime, Cluj-Napoca

www.ag-prime.com
Drupal developer for 7 years

https://www.drupal.org/u/
gabrielu
Drupal module developer and
Drupal 8 Sprinter
Open source enthusiastic
Why performance matters?
Visitors spend less than 2 seconds to make an impression,
Google finds you relevant if the page loads in less than 2
seconds,
Download speeds differ depending on where your end-user is
located,
People browse internet in the train, bus, airport, etc.,
Mobile devices (getting more and more) running mobile
internet care about content size.
Performance key-points
Performance key-points
1. Server response time
2. Page download time
3. Page render time
1. Server response time
Check your traffic
expectations,
Decide your server structure,
what type of data do you host?
Anonymous user
Authenticated pages
Binary data (images, video)
Low traffic website
A virtual machine can do the job
Activate Drupal caching (per page, per block, per view)
De-activate Database logging (on the server as well)
Disable Devel module, UI modules
Activate CSS / JS Aggregation (see Advanced
Aggregation for IE support :) )
Medium traffic
Memory caching (key-value pair storing)
Memcache: https://www.drupal.org/project/memcache
Redis: https://www.drupal.org/project/redis

Can also persist data after restart. Useful for session
storing
Heavy static content / Boost https://www.drupal.org/
project/boost
High traffic
A set of three
Varnish (cache server),
Application server (Drupal) - Apache or Nginx,
Database server (MySQL).
No revision
Drupal has out-of-the-box revision control, you don’t
need it in most of the cases,
https://www.drupal.org/project/
field_sql_norevisions
Custom distribution
Pressflow

A distribution of Drupal with integrated performance,
scalability, availability, and testing enhancements.
Cloud hosting
Acquia Cloud

https://www.acquia.com/products-services/acquia-
cloud
Platform.sh / Developed by Commerce Guys

https://platform.sh/
Pantheon

https://pantheon.io/
The Amazon
Cloud
Elastic Cloud
RDS (Database instances)
Load balancer (pay per minute)
Spot instances (run cheap clone
of your EC2 instance when your
computing needs grow)
http://www.ag-prime.com/
leverages AWS to host high
performing sites.
2. Page download time
Time to download necessary files from the Server to the User’s device
AGGREGATE CSS AND JS
FILES
Make sure that:
Aggregating the content does not break your site,
Make sure CSS rules are correct and don`t rely on
their position in the file.
It loads correctly on all browsers (see IE Limits per
Stylesheet). There is a Drupal solution for this as
well, it is called Advanced Aggregation: https://
www.drupal.org/project/advagg
Use image
sprites
Include more graphics into a single file,
Make the graphic files as small as
possible,
Select them using CSS positioning.
Use SVG’s and IconFonts
Smaller size, vector information represents the text
format that defines it;
It's scalable, this means you can easily scale your
graphics when drawing a responsive layout;
IconFonts: http://css-tricks.com/examples/
IconFont/
DNS & HTTP2
Make fewer DNS lookups, load the content to as FEW
different domains as possible;
Aggregate content, load less files, consider using
HTTP2 / SPDY;
3. Page render time
Optimise the order of your content, put the important parts
at the top and move the less important at the bottom (eg.
move unnecessary Javascript files at the end of your
document);
Use valid markup, valid markup allows the rendering
engine to make less guesses;
Use as few tags as possible. You can consider starting with a
light theme, like https://www.drupal.org/project/
mothership
Load content with Ajax
Quickly deliver pages from cache, then update content
with Javascript at runtime;
Usage:
Commerce sites
News sites
Display comments, votes, etc.
Authenticated
users
Authenticated users constantly
see different content;
Pages, Blocks, Views, Forms
have different cache rules;
https://www.drupal.org/
project/authcache
Questions?
http://fiipractic.asii.ro/cj/back-end-development

Contenu connexe

Tendances

How to Boost WordPress Site Speed in 10 Steps
How to Boost WordPress Site Speed in 10 StepsHow to Boost WordPress Site Speed in 10 Steps
How to Boost WordPress Site Speed in 10 StepsLazylord
 
Fantástico mundo mobile-first, cloud first Oportunidade para TODOS
Fantástico mundo mobile-first, cloud first Oportunidade para TODOSFantástico mundo mobile-first, cloud first Oportunidade para TODOS
Fantástico mundo mobile-first, cloud first Oportunidade para TODOSVinícius Batista de Souza
 

Tendances (6)

Lab#13 responsive web
Lab#13 responsive webLab#13 responsive web
Lab#13 responsive web
 
How to Boost WordPress Site Speed in 10 Steps
How to Boost WordPress Site Speed in 10 StepsHow to Boost WordPress Site Speed in 10 Steps
How to Boost WordPress Site Speed in 10 Steps
 
How to develop browser extension
How to develop browser extensionHow to develop browser extension
How to develop browser extension
 
jQuery Mobile
jQuery MobilejQuery Mobile
jQuery Mobile
 
Versulo (2)
Versulo (2)Versulo (2)
Versulo (2)
 
Fantástico mundo mobile-first, cloud first Oportunidade para TODOS
Fantástico mundo mobile-first, cloud first Oportunidade para TODOSFantástico mundo mobile-first, cloud first Oportunidade para TODOS
Fantástico mundo mobile-first, cloud first Oportunidade para TODOS
 

Similaire à Make your Drupal site perform like an athlete

DrupalCampLA 2011 - Drupal frontend-optimizing
DrupalCampLA 2011 - Drupal frontend-optimizingDrupalCampLA 2011 - Drupal frontend-optimizing
DrupalCampLA 2011 - Drupal frontend-optimizingAshok Modi
 
Drupal Frontend Performance and Scalability
Drupal Frontend Performance and ScalabilityDrupal Frontend Performance and Scalability
Drupal Frontend Performance and ScalabilityAshok Modi
 
Drupal on windows azure
Drupal on windows azureDrupal on windows azure
Drupal on windows azureSteve Xu
 
Performace optimization (increase website speed)
Performace optimization (increase website speed)Performace optimization (increase website speed)
Performace optimization (increase website speed)clickramanm
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalabilityTwinbit
 
Артем Сильчук - Respond in 60ms. Extremal optimization with reinventing a wheel
Артем Сильчук - Respond in 60ms. Extremal optimization with reinventing a wheelАртем Сильчук - Respond in 60ms. Extremal optimization with reinventing a wheel
Артем Сильчук - Respond in 60ms. Extremal optimization with reinventing a wheelLEDC 2016
 
Frontend Optimization - Tips for Improving the Performance of Single Page App...
Frontend Optimization - Tips for Improving the Performance of Single Page App...Frontend Optimization - Tips for Improving the Performance of Single Page App...
Frontend Optimization - Tips for Improving the Performance of Single Page App...QBurst
 
Improving Drupal Performances
Improving Drupal PerformancesImproving Drupal Performances
Improving Drupal PerformancesVladimir Ilic
 
Building high performance web apps.
Building high performance web apps.Building high performance web apps.
Building high performance web apps.Arshak Movsisyan
 
Building high performing web pages
Building high performing web pagesBuilding high performing web pages
Building high performing web pagesNilesh Bafna
 
Oracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance TuningOracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance TuningBrian Huff
 
Website Performance at Client Level
Website Performance at Client LevelWebsite Performance at Client Level
Website Performance at Client LevelConstantin Stan
 
7 secrets of performance oriented front end development services
7 secrets of performance oriented front end development services7 secrets of performance oriented front end development services
7 secrets of performance oriented front end development servicesKaty Slemon
 
Measuring Web Performance
Measuring Web Performance Measuring Web Performance
Measuring Web Performance Dave Olsen
 
Frontend performance
Frontend performanceFrontend performance
Frontend performancesacred 8
 
Drupal & AngularJS - DrupalCamp Spain 2014
Drupal & AngularJS - DrupalCamp Spain 2014Drupal & AngularJS - DrupalCamp Spain 2014
Drupal & AngularJS - DrupalCamp Spain 2014Juampy NR
 

Similaire à Make your Drupal site perform like an athlete (20)

DrupalCampLA 2011 - Drupal frontend-optimizing
DrupalCampLA 2011 - Drupal frontend-optimizingDrupalCampLA 2011 - Drupal frontend-optimizing
DrupalCampLA 2011 - Drupal frontend-optimizing
 
Drupal Frontend Performance and Scalability
Drupal Frontend Performance and ScalabilityDrupal Frontend Performance and Scalability
Drupal Frontend Performance and Scalability
 
Drupal on windows azure
Drupal on windows azureDrupal on windows azure
Drupal on windows azure
 
WordPress optimization
WordPress optimizationWordPress optimization
WordPress optimization
 
Performace optimization (increase website speed)
Performace optimization (increase website speed)Performace optimization (increase website speed)
Performace optimization (increase website speed)
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalability
 
Артем Сильчук - Respond in 60ms. Extremal optimization with reinventing a wheel
Артем Сильчук - Respond in 60ms. Extremal optimization with reinventing a wheelАртем Сильчук - Respond in 60ms. Extremal optimization with reinventing a wheel
Артем Сильчук - Respond in 60ms. Extremal optimization with reinventing a wheel
 
Hello Cloud
Hello CloudHello Cloud
Hello Cloud
 
Frontend Optimization - Tips for Improving the Performance of Single Page App...
Frontend Optimization - Tips for Improving the Performance of Single Page App...Frontend Optimization - Tips for Improving the Performance of Single Page App...
Frontend Optimization - Tips for Improving the Performance of Single Page App...
 
Improving Drupal Performances
Improving Drupal PerformancesImproving Drupal Performances
Improving Drupal Performances
 
Building high performance web apps.
Building high performance web apps.Building high performance web apps.
Building high performance web apps.
 
Building high performing web pages
Building high performing web pagesBuilding high performing web pages
Building high performing web pages
 
Oracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance TuningOracle UCM: Web Site Performance Tuning
Oracle UCM: Web Site Performance Tuning
 
Website speed
Website speedWebsite speed
Website speed
 
Website Performance at Client Level
Website Performance at Client LevelWebsite Performance at Client Level
Website Performance at Client Level
 
7 secrets of performance oriented front end development services
7 secrets of performance oriented front end development services7 secrets of performance oriented front end development services
7 secrets of performance oriented front end development services
 
Measuring Web Performance
Measuring Web Performance Measuring Web Performance
Measuring Web Performance
 
Frontend performance
Frontend performanceFrontend performance
Frontend performance
 
Drupalcon Mumbai
Drupalcon MumbaiDrupalcon Mumbai
Drupalcon Mumbai
 
Drupal & AngularJS - DrupalCamp Spain 2014
Drupal & AngularJS - DrupalCamp Spain 2014Drupal & AngularJS - DrupalCamp Spain 2014
Drupal & AngularJS - DrupalCamp Spain 2014
 

Plus de AG Prime

State of Drupal Romania
State of Drupal RomaniaState of Drupal Romania
State of Drupal RomaniaAG Prime
 
Drupal content types : user roles
Drupal content types : user rolesDrupal content types : user roles
Drupal content types : user rolesAG Prime
 
Drupal ro comunity
Drupal ro comunityDrupal ro comunity
Drupal ro comunityAG Prime
 
Drupal themes
Drupal themesDrupal themes
Drupal themesAG Prime
 
Introduction to drupal
Introduction to drupalIntroduction to drupal
Introduction to drupalAG Prime
 
Contribute to drupal
Contribute to drupalContribute to drupal
Contribute to drupalAG Prime
 
Drupal Case Study
Drupal Case StudyDrupal Case Study
Drupal Case StudyAG Prime
 
Code Retreat
Code RetreatCode Retreat
Code RetreatAG Prime
 
Drupal Basics
Drupal BasicsDrupal Basics
Drupal BasicsAG Prime
 

Plus de AG Prime (9)

State of Drupal Romania
State of Drupal RomaniaState of Drupal Romania
State of Drupal Romania
 
Drupal content types : user roles
Drupal content types : user rolesDrupal content types : user roles
Drupal content types : user roles
 
Drupal ro comunity
Drupal ro comunityDrupal ro comunity
Drupal ro comunity
 
Drupal themes
Drupal themesDrupal themes
Drupal themes
 
Introduction to drupal
Introduction to drupalIntroduction to drupal
Introduction to drupal
 
Contribute to drupal
Contribute to drupalContribute to drupal
Contribute to drupal
 
Drupal Case Study
Drupal Case StudyDrupal Case Study
Drupal Case Study
 
Code Retreat
Code RetreatCode Retreat
Code Retreat
 
Drupal Basics
Drupal BasicsDrupal Basics
Drupal Basics
 

Dernier

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
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 WorkerThousandEyes
 
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
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
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 slidevu2urc
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 

Dernier (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
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
 
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
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
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
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 

Make your Drupal site perform like an athlete

  • 1. 15 / 03 / 2015 - Drupal Camp Cluj 2015 Make your Drupal site perform Like an athlete
  • 2. Gabriel Ungureanu CEO @ AG Prime, Cluj-Napoca
 www.ag-prime.com Drupal developer for 7 years
 https://www.drupal.org/u/ gabrielu Drupal module developer and Drupal 8 Sprinter Open source enthusiastic
  • 3. Why performance matters? Visitors spend less than 2 seconds to make an impression, Google finds you relevant if the page loads in less than 2 seconds, Download speeds differ depending on where your end-user is located, People browse internet in the train, bus, airport, etc., Mobile devices (getting more and more) running mobile internet care about content size.
  • 5. Performance key-points 1. Server response time 2. Page download time 3. Page render time
  • 6. 1. Server response time Check your traffic expectations, Decide your server structure, what type of data do you host? Anonymous user Authenticated pages Binary data (images, video)
  • 7. Low traffic website A virtual machine can do the job Activate Drupal caching (per page, per block, per view) De-activate Database logging (on the server as well) Disable Devel module, UI modules Activate CSS / JS Aggregation (see Advanced Aggregation for IE support :) )
  • 8.
  • 9. Medium traffic Memory caching (key-value pair storing) Memcache: https://www.drupal.org/project/memcache Redis: https://www.drupal.org/project/redis
 Can also persist data after restart. Useful for session storing Heavy static content / Boost https://www.drupal.org/ project/boost
  • 10. High traffic A set of three Varnish (cache server), Application server (Drupal) - Apache or Nginx, Database server (MySQL).
  • 11.
  • 12.
  • 13. No revision Drupal has out-of-the-box revision control, you don’t need it in most of the cases, https://www.drupal.org/project/ field_sql_norevisions
  • 14. Custom distribution Pressflow
 A distribution of Drupal with integrated performance, scalability, availability, and testing enhancements.
  • 15. Cloud hosting Acquia Cloud
 https://www.acquia.com/products-services/acquia- cloud Platform.sh / Developed by Commerce Guys
 https://platform.sh/ Pantheon
 https://pantheon.io/
  • 16. The Amazon Cloud Elastic Cloud RDS (Database instances) Load balancer (pay per minute) Spot instances (run cheap clone of your EC2 instance when your computing needs grow) http://www.ag-prime.com/ leverages AWS to host high performing sites.
  • 17. 2. Page download time Time to download necessary files from the Server to the User’s device
  • 18. AGGREGATE CSS AND JS FILES Make sure that: Aggregating the content does not break your site, Make sure CSS rules are correct and don`t rely on their position in the file. It loads correctly on all browsers (see IE Limits per Stylesheet). There is a Drupal solution for this as well, it is called Advanced Aggregation: https:// www.drupal.org/project/advagg
  • 19. Use image sprites Include more graphics into a single file, Make the graphic files as small as possible, Select them using CSS positioning.
  • 20. Use SVG’s and IconFonts Smaller size, vector information represents the text format that defines it; It's scalable, this means you can easily scale your graphics when drawing a responsive layout; IconFonts: http://css-tricks.com/examples/ IconFont/
  • 21. DNS & HTTP2 Make fewer DNS lookups, load the content to as FEW different domains as possible; Aggregate content, load less files, consider using HTTP2 / SPDY;
  • 22. 3. Page render time Optimise the order of your content, put the important parts at the top and move the less important at the bottom (eg. move unnecessary Javascript files at the end of your document); Use valid markup, valid markup allows the rendering engine to make less guesses; Use as few tags as possible. You can consider starting with a light theme, like https://www.drupal.org/project/ mothership
  • 23. Load content with Ajax Quickly deliver pages from cache, then update content with Javascript at runtime; Usage: Commerce sites News sites Display comments, votes, etc.
  • 24. Authenticated users Authenticated users constantly see different content; Pages, Blocks, Views, Forms have different cache rules; https://www.drupal.org/ project/authcache
  • 25.