Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Implementing High Performance Drupal Sites

5,293 views

Published on

UniMity's substantial presence in Drupal Camp Deccan 11-11-11 in HYD. Audience were just applauding with gusto at the end of our presentation (How to build and maintain high performance websites)

Published in: Technology
  • Be the first to comment

Implementing High Performance Drupal Sites

  1. 1. Presentation Title w w w . u n i m i t y . c o m DEC 2010 Implementing High Performance Drupal Sites Unimity Solutions. 3, 5th Floor, "Kasi Arcade" 116, Thyagaraya Road, T.Nagar, Chennai 600017 India, Phone: (91- 44) 43923800 www.unimity.com By Kamalakanan & Shyamala
  2. 2. Presentation Path <ul><li>What is “Performance”? </li></ul><ul><li>Different Layers of Performance </li></ul><ul><li>How to configure Drupal for Performance </li></ul><ul><li>Writing Drupal Modules for High Performance </li></ul><ul><li>Some Advanced Techniques & Caching Systems </li></ul><ul><li>Event Based Caching </li></ul><ul><li>Drupal 6 vs Drupal 7 </li></ul><ul><li>Performance in Drupal 8 </li></ul>
  3. 3. What is “Performance”? <ul><li>The performance of a website is the speed at which the website can be accessed by the end user. </li></ul>Response Time Availability Scalability
  4. 4. Different Layers of Performance <ul><li>User end </li></ul><ul><ul><li>Size of Page </li></ul></ul><ul><ul><li>No of request </li></ul></ul><ul><ul><li>Browser Cache </li></ul></ul><ul><li>Server side </li></ul><ul><ul><li>PHP </li></ul></ul><ul><ul><li>MySql </li></ul></ul><ul><ul><li>Apache </li></ul></ul><ul><li>Application End </li></ul><ul><ul><li>Drupal </li></ul></ul>
  5. 5. How to configure Drupal for Performance <ul><li>Using Drupal Cache </li></ul><ul><ul><li>CSS JS Aggregation </li></ul></ul><ul><ul><li>Page Cache </li></ul></ul><ul><ul><li>Views, Block, Menu, Panel, Form Cache </li></ul></ul><ul><li>Number of Modules </li></ul><ul><li>Sys Log vs DB log </li></ul><ul><li>Developer Tools </li></ul><ul><ul><li>Devel </li></ul></ul><ul><ul><li>DB tuner </li></ul></ul>
  6. 6. Writing Drupal Modules for High Performance <ul><li>Coding Standards </li></ul><ul><li>Size of files </li></ul><ul><li>Appropriate use of inc files </li></ul><ul><li>Reuse Drupal functions as much as possible </li></ul><ul><li>Use of Static Variables </li></ul><ul><li>Efficient code </li></ul><ul><li>Query vs use of Views </li></ul><ul><li>Writing Custom Cache </li></ul>
  7. 7. Some Advanced Techniques & Caching Systems <ul><li>Event Based Caching </li></ul><ul><li>Boost </li></ul><ul><li>MemCache </li></ul><ul><li>Varnish </li></ul>
  8. 8. Event Based Caching
  9. 9. Event Based Caching vs Time Based Caching twice a day (Separate cron ) No Tag cloud   All  Once a Day (Separate cron) No Birthday Wishes   Home Once a day (separate cron) No Active members   Home   yes Display Name--> Did You Know Home Home   yes Display Name --> Spotlight Home Home   yes Display Name --> Home Slide Home Home           Time Based - update Frequency Event based Display Name View Name Page
  10. 10. Importance of planning for Cache Sheet   yes Display Name --> Announcement news_page Announcements             yes Display Name -->Buzz Zone       yes Display Name --> Recent topics,       No Display Name -->Popular in corporate zone,       yes Display Name --> Corporate Zone, rightside_blocks               yes Display Name --> News news_page           News Time Based - update Frequency Event based Display Name View Name Content Type
  11. 11. Performance in Drupal 6 vs Drupal 7 <ul><ul><li>Less SQL </li></ul></ul><ul><ul><li>Path round trips </li></ul></ul><ul><ul><li>Entity Load vs Node Load </li></ul></ul><ul><ul><li>CCK Storage vs Entities </li></ul></ul>
  12. 12. Performance in Drupal 8 <ul><li>Performance Gates </li></ul><ul><ul><li>SQL queries </li></ul></ul><ul><ul><li>Memory usage </li></ul></ul><ul><ul><li>CPU </li></ul></ul><ul><ul><li>System calls </li></ul></ul><ul><ul><li>Front end </li></ul></ul>
  13. 13. Expert Knowledge Groups – Groups.Drupal.Org
  14. 14. <ul><li>Thank You! </li></ul>

×