implementing high performance drupal sites

14
w w w . u n i m i t y . c o m w w w . u n i m i t y . c o m DEC 2010 Presentation Title 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

Upload: shri-kumar

Post on 15-Jan-2015

4.233 views

Category:

Technology


3 download

DESCRIPTION

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)

TRANSCRIPT

Page 1: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o mw w w . u n i m i t y . c o m

DEC 2010

Presentation Title

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

Page 2: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Presentation Path

• What is “Performance”?• Different Layers of Performance• How to configure Drupal for Performance• Writing Drupal Modules for High Performance• Some Advanced Techniques & Caching

Systems• Event Based Caching• Drupal 6 vs Drupal 7• Performance in Drupal 8

Page 3: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

What is “Performance”?

The performance of a website is the speed at which the website can be accessed by the end user.

Response Time

Availability Scalability

Page 4: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Different Layers of Performance

• User end– Size of Page– No of request– Browser Cache

• Server side– PHP– MySql– Apache

• Application End– Drupal

Page 5: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

How to configure Drupal for Performance

• Using Drupal Cache– CSS JS Aggregation– Page Cache– Views, Block, Menu,

Panel, Form Cache

• Number of Modules• Sys Log vs DB log• Developer Tools

– Devel– DB tuner

Page 6: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Writing Drupal Modules for High Performance

• Coding Standards• Size of files• Appropriate use of inc files• Reuse Drupal functions as much as

possible• Use of Static Variables • Efficient code• Query vs use of Views• Writing Custom Cache

Page 7: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Some Advanced Techniques & Caching Systems

• Event Based Caching• Boost• MemCache• Varnish

Page 8: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Event Based Caching

Page 9: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Event Based Caching vs Time Based Caching

Page View Name Display NameEvent based

Time Based - update Frequency

         

Home HomeDisplay Name --> Home Slide yes

 

Home Home Display Name --> Spotlight yes  

Home HomeDisplay Name--> Did You Know yes

 

Home   Active members NoOnce a day (separate cron)

Home   Birthday Wishes NoOnce a Day (Separate cron)

All    Tag cloud Notwice a day (Separate cron )

Page 10: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Importance of planning for CacheSheet

Content Type View Name Display Name

Event based

Time Based - update Frequency

News        

  news_page Display Name --> News yes  

         

 rightside_blocks

Display Name --> Corporate Zone,

yes  

   Display Name -->Popular in corporate zone,

No  

   Display Name --> Recent topics,

yes  

    Display Name -->Buzz Zone yes  

         

Announcements

news_pageDisplay Name --> Announcement

yes  

Page 11: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Performance inDrupal 6 vs Drupal 7

–Less SQL–Path round trips–Entity Load vs Node Load–CCK Storage vs Entities

Page 12: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Performance inDrupal 8

•Performance Gates– SQL queries – Memory usage – CPU – System calls– Front end

Page 13: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Expert Knowledge Groups – Groups.Drupal.Org

Page 14: Implementing High Performance Drupal Sites

w w w . u n i m i t y . c o m

Thank You!