SlideShare a Scribd company logo
DrupalCamps 2012

           Drupal
it all comes down to performance


        Janis Janovskis
         @PASSIVUS
 http://passivemanagement.net
Drupal
it all comes down to performance




            ?
Drupal
it all comes down to performance


           WHY?
          WHERE?
           HOW?

               :)
Drupal
          it all comes down to performance
    Database level – wt … is cache?
✔   cache_block
✔   cache_bootstrap
✔   cache_field
✔   cache_form
✔   cache_.....
Drupal
          it all comes down to performance
            Database → cache_your_???();
✔   cache_set
✔   cache_get
✔   ctools_include('object-cache');
✔   ctools_object_cache_set('my_module', $id,
    $object);
✔   ctools_include('object-cache');
✔   ctools_object_cache_clear('my_module', $id);
Drupal
             it all comes down to performance
                  Database → caching();
✔   Query caching – query_cache_type=1
✔   table caching – memcache
✔   noSQL
    ➔   MongoDB
    ➔   CouchDB
    ➔   Reddis
    ➔   ….
Drupal
          it all comes down to performance
                         PHP
✔   APC
✔   XCACHE
✔   Remove redundant modules(code)
✔   Profiling (Xhprof)
Drupal
          it all comes down to performance
    PHP - Modules
✔   entity_cache
✔   boost (best on shared environments)
✔   block_cache_alter
✔   memcache api integration
✔   apc integration
✔   elysia cron (better cron job management)
✔   ajax blocks
Drupal
          it all comes down to performance
                Filesystem - backend
✔   File size limitations (file field configuration
✔   aggregate css
✔   aggregate js
✔   remove redundant css/js
✔   cdn
Drupal
          it all comes down to performance
                 Files –> front end();
✔   Build in css/js architecture (“clearfix”)
✔   Built in js framework (jQuery, + jQuery UI(D7
✔   Image preloads
              ADMIN             CONTENT



                       MODULE


              THEME             THEME
Drupal
         it all comes down to performance
    Performance → Web servers();
✔   Load balancing
✔   Apache mod_proxy
✔   Ningx vs Apache
✔   Varnish proxy caching
Drupal
        it all comes down to performance
          TESTING YOUR BUILT

✔   DrupalWebTestCase
✔   devel module → query information
✔   views statistics
✔   performance tests(jmeter)
Drupal
          it all comes down to performance
                       www.bounty.com
✔   ~1.5 milj. users
✔   Affiliate marketing solutions
✔   Embed community
✔   “Crapped” (not fresh) backend
✔   Almost no documentation
✔   Offline db integration
Drupal
      it all comes down to performance
Architecture

               APACHE1             MEMCACHE1


  LOAD
BALANCER                 FILE SERVER           MYSQL
                                               MYSQL
                                               MYSQL
                                               MYSQL

               APACHE2            MEMCACHE1
Drupal
          it all comes down to performance
    Bounty → Improvements();
✔   No panels
✔   Block instances
✔   By, by boot :)
✔   Education – tutoring
✔   Micro-sites
✔   Code improvements(Documentation)
✔   Removing redundancies (profile module)
Drupal
           it all comes down to performance
                  www.savethechildren.org.uk
✔   25 editors
✔   UI friendly configuration
    ➔   Panels
    ➔   Context
    ➔   Views
    ➔   Pages
Drupal
           it all comes down to performance
    Architecture

           varnish1   apache1       memcache1


                                                MYSQL
  LOAD                      files
BALANCER                                        MYSQL
                                                MYSQL


           varnish1   apache2       memcache2
Drupal
          it all comes down to performance
    Save the Children → improvements();
✔   Memcache
✔   Profiling with xhprof, devel
✔   Contributing to community
✔   Education
✔   … I am still on this role …..
Drupal
          it all comes down to performance
    Improvements → personal();
✔   Analysing
✔   Contributing
✔   Training
✔   Sharing
Drupal
   it all comes down to performance


             Thanks
     http://passivemanagement.net
janis.janovskis@passivemanagement.net
            @PASSIVUS

More Related Content

Similar to Drupal - it all comes down to performance

A Custom Drupal Theme in 40 Minutes
A Custom Drupal Theme in 40 MinutesA Custom Drupal Theme in 40 Minutes
A Custom Drupal Theme in 40 Minutes
Snake Hill Web Agency
 
Drupal Meetup Lisbon
Drupal Meetup LisbonDrupal Meetup Lisbon
Drupal Meetup Lisbon
Paulo Gomes
 
Embracing the modern web using Drupal as Headless CMS with GatsbyJS NYC
Embracing the modern web using Drupal as Headless CMS with GatsbyJS NYCEmbracing the modern web using Drupal as Headless CMS with GatsbyJS NYC
Embracing the modern web using Drupal as Headless CMS with GatsbyJS NYC
Jesus Manuel Olivas
 
Building and Maintaining a Distribution in Drupal 7 with Features
Building and Maintaining a  Distribution in Drupal 7 with FeaturesBuilding and Maintaining a  Distribution in Drupal 7 with Features
Building and Maintaining a Distribution in Drupal 7 with Features
Nuvole
 
Improving your Drupal 8 development workflow DrupalCampLA
Improving your Drupal 8 development workflow DrupalCampLAImproving your Drupal 8 development workflow DrupalCampLA
Improving your Drupal 8 development workflow DrupalCampLA
Jesus Manuel Olivas
 
BADCamp 2012 -Beginner Best Practices
BADCamp 2012 -Beginner Best PracticesBADCamp 2012 -Beginner Best Practices
BADCamp 2012 -Beginner Best Practices
meghsweet
 
Tutorial MySQL com Java
Tutorial MySQL com JavaTutorial MySQL com Java
Tutorial MySQL com Java
MySQL Brasil
 
Using JavaScript in Drupal
Using JavaScript in DrupalUsing JavaScript in Drupal
Using JavaScript in Drupal
katbailey
 
SynapseIndia drupal presentation on drupal
SynapseIndia drupal  presentation on drupalSynapseIndia drupal  presentation on drupal
SynapseIndia drupal presentation on drupal
Synapseindiappsdevelopment
 
Divio - Django in the "cloud" 
Divio - Django in the "cloud" Divio - Django in the "cloud" 
Divio - Django in the "cloud" 
Mathieu Meylan
 
Speeding up your Drupal site
Speeding up your Drupal siteSpeeding up your Drupal site
Speeding up your Drupal site
Ronan Berder
 
Dbdeployer, the universal installer
Dbdeployer, the universal installerDbdeployer, the universal installer
Dbdeployer, the universal installer
Giuseppe Maxia
 
Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9
Mediacurrent
 
How to keep Drupal relevant in the Git-based and API-driven CMS era - BADCamp
How to keep Drupal relevant in the Git-based and API-driven CMS era - BADCampHow to keep Drupal relevant in the Git-based and API-driven CMS era - BADCamp
How to keep Drupal relevant in the Git-based and API-driven CMS era - BADCamp
Jesus Manuel Olivas
 
Drupal 6 Performance Tips
Drupal 6 Performance TipsDrupal 6 Performance Tips
Drupal 6 Performance Tips
Trevor James
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalability
Twinbit
 
We need revisions and CRAP everywhere in Drupal core
We need revisions and CRAP everywhere in Drupal coreWe need revisions and CRAP everywhere in Drupal core
We need revisions and CRAP everywhere in Drupal core
Dick Olsson
 
Depolying Drupal with Git, Drush Make and Capistrano
Depolying Drupal with Git, Drush Make and CapistranoDepolying Drupal with Git, Drush Make and Capistrano
Depolying Drupal with Git, Drush Make and Capistrano
libsys
 
App cap2956v2-121001194956-phpapp01 (1)
App cap2956v2-121001194956-phpapp01 (1)App cap2956v2-121001194956-phpapp01 (1)
App cap2956v2-121001194956-phpapp01 (1)
outstanding59
 
Inside the Hadoop Machine @ VMworld
Inside the Hadoop Machine @ VMworldInside the Hadoop Machine @ VMworld
Inside the Hadoop Machine @ VMworld
Richard McDougall
 

Similar to Drupal - it all comes down to performance (20)

A Custom Drupal Theme in 40 Minutes
A Custom Drupal Theme in 40 MinutesA Custom Drupal Theme in 40 Minutes
A Custom Drupal Theme in 40 Minutes
 
Drupal Meetup Lisbon
Drupal Meetup LisbonDrupal Meetup Lisbon
Drupal Meetup Lisbon
 
Embracing the modern web using Drupal as Headless CMS with GatsbyJS NYC
Embracing the modern web using Drupal as Headless CMS with GatsbyJS NYCEmbracing the modern web using Drupal as Headless CMS with GatsbyJS NYC
Embracing the modern web using Drupal as Headless CMS with GatsbyJS NYC
 
Building and Maintaining a Distribution in Drupal 7 with Features
Building and Maintaining a  Distribution in Drupal 7 with FeaturesBuilding and Maintaining a  Distribution in Drupal 7 with Features
Building and Maintaining a Distribution in Drupal 7 with Features
 
Improving your Drupal 8 development workflow DrupalCampLA
Improving your Drupal 8 development workflow DrupalCampLAImproving your Drupal 8 development workflow DrupalCampLA
Improving your Drupal 8 development workflow DrupalCampLA
 
BADCamp 2012 -Beginner Best Practices
BADCamp 2012 -Beginner Best PracticesBADCamp 2012 -Beginner Best Practices
BADCamp 2012 -Beginner Best Practices
 
Tutorial MySQL com Java
Tutorial MySQL com JavaTutorial MySQL com Java
Tutorial MySQL com Java
 
Using JavaScript in Drupal
Using JavaScript in DrupalUsing JavaScript in Drupal
Using JavaScript in Drupal
 
SynapseIndia drupal presentation on drupal
SynapseIndia drupal  presentation on drupalSynapseIndia drupal  presentation on drupal
SynapseIndia drupal presentation on drupal
 
Divio - Django in the "cloud" 
Divio - Django in the "cloud" Divio - Django in the "cloud" 
Divio - Django in the "cloud" 
 
Speeding up your Drupal site
Speeding up your Drupal siteSpeeding up your Drupal site
Speeding up your Drupal site
 
Dbdeployer, the universal installer
Dbdeployer, the universal installerDbdeployer, the universal installer
Dbdeployer, the universal installer
 
Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9
 
How to keep Drupal relevant in the Git-based and API-driven CMS era - BADCamp
How to keep Drupal relevant in the Git-based and API-driven CMS era - BADCampHow to keep Drupal relevant in the Git-based and API-driven CMS era - BADCamp
How to keep Drupal relevant in the Git-based and API-driven CMS era - BADCamp
 
Drupal 6 Performance Tips
Drupal 6 Performance TipsDrupal 6 Performance Tips
Drupal 6 Performance Tips
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalability
 
We need revisions and CRAP everywhere in Drupal core
We need revisions and CRAP everywhere in Drupal coreWe need revisions and CRAP everywhere in Drupal core
We need revisions and CRAP everywhere in Drupal core
 
Depolying Drupal with Git, Drush Make and Capistrano
Depolying Drupal with Git, Drush Make and CapistranoDepolying Drupal with Git, Drush Make and Capistrano
Depolying Drupal with Git, Drush Make and Capistrano
 
App cap2956v2-121001194956-phpapp01 (1)
App cap2956v2-121001194956-phpapp01 (1)App cap2956v2-121001194956-phpapp01 (1)
App cap2956v2-121001194956-phpapp01 (1)
 
Inside the Hadoop Machine @ VMworld
Inside the Hadoop Machine @ VMworldInside the Hadoop Machine @ VMworld
Inside the Hadoop Machine @ VMworld
 

More from Janis Janovskis

Drupal for big data projects at the DupalCamp North 2015.
Drupal for big data projects at the DupalCamp North 2015.Drupal for big data projects at the DupalCamp North 2015.
Drupal for big data projects at the DupalCamp North 2015.
Janis Janovskis
 
Don't drive diesels - why quality matters
Don't drive diesels  - why quality mattersDon't drive diesels  - why quality matters
Don't drive diesels - why quality matters
Janis Janovskis
 
Drupal for big data is it ready?
Drupal for big data   is it ready?Drupal for big data   is it ready?
Drupal for big data is it ready?
Janis Janovskis
 
How to set up a great team?
How to set up a great team?How to set up a great team?
How to set up a great team?
Janis Janovskis
 
Why to give talks
Why to give talksWhy to give talks
Why to give talks
Janis Janovskis
 
Leading open source development team on large scale cloud based systems
Leading open source development team on large scale cloud based systemsLeading open source development team on large scale cloud based systems
Leading open source development team on large scale cloud based systems
Janis Janovskis
 

More from Janis Janovskis (6)

Drupal for big data projects at the DupalCamp North 2015.
Drupal for big data projects at the DupalCamp North 2015.Drupal for big data projects at the DupalCamp North 2015.
Drupal for big data projects at the DupalCamp North 2015.
 
Don't drive diesels - why quality matters
Don't drive diesels  - why quality mattersDon't drive diesels  - why quality matters
Don't drive diesels - why quality matters
 
Drupal for big data is it ready?
Drupal for big data   is it ready?Drupal for big data   is it ready?
Drupal for big data is it ready?
 
How to set up a great team?
How to set up a great team?How to set up a great team?
How to set up a great team?
 
Why to give talks
Why to give talksWhy to give talks
Why to give talks
 
Leading open source development team on large scale cloud based systems
Leading open source development team on large scale cloud based systemsLeading open source development team on large scale cloud based systems
Leading open source development team on large scale cloud based systems
 

Recently uploaded

Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 

Recently uploaded (20)

Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 

Drupal - it all comes down to performance

  • 1. DrupalCamps 2012 Drupal it all comes down to performance Janis Janovskis @PASSIVUS http://passivemanagement.net
  • 2. Drupal it all comes down to performance ?
  • 3. Drupal it all comes down to performance WHY? WHERE? HOW? :)
  • 4. Drupal it all comes down to performance Database level – wt … is cache? ✔ cache_block ✔ cache_bootstrap ✔ cache_field ✔ cache_form ✔ cache_.....
  • 5. Drupal it all comes down to performance Database → cache_your_???(); ✔ cache_set ✔ cache_get ✔ ctools_include('object-cache'); ✔ ctools_object_cache_set('my_module', $id, $object); ✔ ctools_include('object-cache'); ✔ ctools_object_cache_clear('my_module', $id);
  • 6. Drupal it all comes down to performance Database → caching(); ✔ Query caching – query_cache_type=1 ✔ table caching – memcache ✔ noSQL ➔ MongoDB ➔ CouchDB ➔ Reddis ➔ ….
  • 7. Drupal it all comes down to performance PHP ✔ APC ✔ XCACHE ✔ Remove redundant modules(code) ✔ Profiling (Xhprof)
  • 8. Drupal it all comes down to performance PHP - Modules ✔ entity_cache ✔ boost (best on shared environments) ✔ block_cache_alter ✔ memcache api integration ✔ apc integration ✔ elysia cron (better cron job management) ✔ ajax blocks
  • 9. Drupal it all comes down to performance Filesystem - backend ✔ File size limitations (file field configuration ✔ aggregate css ✔ aggregate js ✔ remove redundant css/js ✔ cdn
  • 10. Drupal it all comes down to performance Files –> front end(); ✔ Build in css/js architecture (“clearfix”) ✔ Built in js framework (jQuery, + jQuery UI(D7 ✔ Image preloads ADMIN CONTENT MODULE THEME THEME
  • 11. Drupal it all comes down to performance Performance → Web servers(); ✔ Load balancing ✔ Apache mod_proxy ✔ Ningx vs Apache ✔ Varnish proxy caching
  • 12. Drupal it all comes down to performance TESTING YOUR BUILT ✔ DrupalWebTestCase ✔ devel module → query information ✔ views statistics ✔ performance tests(jmeter)
  • 13. Drupal it all comes down to performance www.bounty.com ✔ ~1.5 milj. users ✔ Affiliate marketing solutions ✔ Embed community ✔ “Crapped” (not fresh) backend ✔ Almost no documentation ✔ Offline db integration
  • 14.
  • 15. Drupal it all comes down to performance Architecture APACHE1 MEMCACHE1 LOAD BALANCER FILE SERVER MYSQL MYSQL MYSQL MYSQL APACHE2 MEMCACHE1
  • 16. Drupal it all comes down to performance Bounty → Improvements(); ✔ No panels ✔ Block instances ✔ By, by boot :) ✔ Education – tutoring ✔ Micro-sites ✔ Code improvements(Documentation) ✔ Removing redundancies (profile module)
  • 17.
  • 18. Drupal it all comes down to performance www.savethechildren.org.uk ✔ 25 editors ✔ UI friendly configuration ➔ Panels ➔ Context ➔ Views ➔ Pages
  • 19. Drupal it all comes down to performance Architecture varnish1 apache1 memcache1 MYSQL LOAD files BALANCER MYSQL MYSQL varnish1 apache2 memcache2
  • 20. Drupal it all comes down to performance Save the Children → improvements(); ✔ Memcache ✔ Profiling with xhprof, devel ✔ Contributing to community ✔ Education ✔ … I am still on this role …..
  • 21. Drupal it all comes down to performance Improvements → personal(); ✔ Analysing ✔ Contributing ✔ Training ✔ Sharing
  • 22. Drupal it all comes down to performance Thanks http://passivemanagement.net janis.janovskis@passivemanagement.net @PASSIVUS