Drupal Performance Audit and Optimization

Post on 13-Apr-2017

467 views 3 download

Transcript of Drupal Performance Audit and Optimization

Drupal Performance Audit and Optimization

Anoop John, CTO Vimal Joseph, Technical Architect

Drupal Performance Optimization

Drupal is not slow

Drupal is not slowThe site was just not built for the contextPoorly written backendUnoptimized front endInfrastructure not designed for traffic patterns

Drupal Performance Optimization

Aspects of Performance

Page load timePage render timeMaximum number of simultaneous users on siteMaximum number of logged in users on site

Drupal Performance Optimization

Auditing Performance

Document baseline performanceIdentify traffic patternsEvaluate website buildIdentify bottlenecks in the backendIdentify bottlenecks in the frontendEvaluate hardware platformIdentify limitations at the server levelEvaluate server application configurationIdentify sub-optimal configurations

Drupal Performance Optimization

Factors Affecting Performance

Server configuration - hardware specsServer applications - apache, database, cachingDrupal backend - how the site has been built, modules, themes, custom codeDrupal frontend - internal resources, external resources, content to be loaded / rendered, complexity of HTML, JS, CSSCaching layers - varnish, CDN, browser cache

Drupal Performance Optimization

Server Configuration

Shared? VPS? Dedicated?Processor - speed? cores? dedicated? virtual?Memory - total memory available? shared? free memory?Hard disk - speed of i/o? SSD?

Drupal Performance Optimization

Server Applications

Apache - threading model - MPM, Prefork, CGI, FCGI, maximum number of requests, number of children, connection time out, modulesNginxMySQL - query caching, indexes, tmp table, open tables, heap sizePHP - extensions

Drupal Performance Optimization

Drupal Backend

Caching - page caching, views caching, caching in custom codeMemcacheModules - number? unused? admin? Custom code - reviewed?SQL queries - slow queries? query log?SQL inserts - too many? logging?Disk writes - too many?Synchronous requests?

Drupal Performance Optimization

Drupal Frontend

Loading timeRendering timeComplexity of HTMLComplexity and size of CSSComplexity and size of JSNumber and size of static resourcesNumber of external resourcesSynchronous external resources

Drupal Performance Optimization

Caching Layers

Browser cache - enabled? expiry?Static caching - varnish? boost?Static resource caching - CDN? subdomains?

Drupal Performance Optimization

Optimizing Performance

Quantify bottlenecks - impact? cost? time?Classify bottlenecks - critical, high, normal, lowGroup solutions Iterate over groups - implement and testDocument resultsMonitor and re-evaluate

Drupal Performance Optimization

Testing Performance

New Relic monitoringApache ab testingApache JMeter load testing

Drupal Performance Optimization

Performance Tools

DevelMySQL query logsEXPLAINdpm, watchdogProfiling and tracing using xdebughttp://webpagetest.org/Yahoo YSlow, Google Page SpeedFirebug

Drupal Performance Optimization

Common Performance Mistakes

Too many modulesDisabled cachingCache clearsDebug logs and database loggingViews cachingPage not foundsUnnecessary sessionsPHP errors

Zyxware Technologies and Drupal

Zyxware is a leading contributor to Drupal from India and is one of only

six Featured Service Providers from India listed on drupal.org

● Over 40,000 websites use our modules and themes

● More than 30 contributed modules and themes

● Maintainer of Search404, a top 100 Drupal module

● Over 1000 commits at drupal.org

● Contributes all patches back to Drupal

● Our profile on drupal.org - http://drupal.org/user/222163

● Knowledge partnerships with Acquia, New Relic and Volacci

● Freedom Walk, a 44 day walk by a team of

Free Software Evangelists across the length of

Kerala to promote Free Software

● Building RithuOS, an Operating System for Engineering

students with Free Software Engineering applications

● GNU/Linux Install Fests in Schools, Colleges and at Technopark.

● Local language (Malayalam) computing camps in colleges

● Building and Maintenance of Freedom Toaster, a Free Software

kiosk

● Conducting Free Software workshops and

lectures in colleges in Kerala

Free Software and Zyxware Technologies

• Check us out at http://www.zyxware.com

• Mail us at drupal@zyxware.com

• Like us at http://www.facebook.com/zyxware

• Follow us at http://www.twitter.com/zyxware

• Connect with us at

http://www.linkedin.com/companies/zyxware-technologies

• Talk to us at +91-9495969446 between 9AM - 9PM IST

• Skype me at aj_zyxware

Contact Us

Drupal Performance Optimization

Thank you