SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Ähnlich wie Drupal - it all comes down to performance

Drupal Meetup Lisbon
Drupal Meetup LisbonDrupal Meetup Lisbon
Drupal Meetup LisbonPaulo 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 NYCJesus 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 FeaturesNuvole
 
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 DrupalCampLAJesus Manuel Olivas
 
BADCamp 2012 -Beginner Best Practices
BADCamp 2012 -Beginner Best PracticesBADCamp 2012 -Beginner Best Practices
BADCamp 2012 -Beginner Best Practicesmeghsweet
 
Tutorial MySQL com Java
Tutorial MySQL com JavaTutorial MySQL com Java
Tutorial MySQL com JavaMySQL Brasil
 
Using JavaScript in Drupal
Using JavaScript in DrupalUsing JavaScript in Drupal
Using JavaScript in Drupalkatbailey
 
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 siteRonan Berder
 
Dbdeployer, the universal installer
Dbdeployer, the universal installerDbdeployer, the universal installer
Dbdeployer, the universal installerGiuseppe 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 9Mediacurrent
 
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 - BADCampJesus Manuel Olivas
 
Drupal 6 Performance Tips
Drupal 6 Performance TipsDrupal 6 Performance Tips
Drupal 6 Performance TipsTrevor James
 
Drupal performance and scalability
Drupal performance and scalabilityDrupal performance and scalability
Drupal performance and scalabilityTwinbit
 
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 coreDick 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 Capistranolibsys
 
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 @ VMworldRichard McDougall
 

Ähnlich wie 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
 

Mehr von 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 mattersJanis 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
 
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 systemsJanis Janovskis
 

Mehr von 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
 

Kürzlich hochgeladen

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
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
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
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
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
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
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
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
 
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
 
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
 
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
 

Kürzlich hochgeladen (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
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
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
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...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
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...
 
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
 
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?
 
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
 

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