web application performance audit and optimization

19
Web Application Performance Audit and Optimization Anoop John, Founder & CTO

Upload: zyxware-technologies

Post on 13-Apr-2017

439 views

Category:

Technology


1 download

TRANSCRIPT

Web Application Performance Audit and Optimization

Anoop John, Founder & CTO

Web Application Performance Optimization

What is performance?

How fast a site loads on a users deviceHow fast a site loads on different devicesHow well the server responds to increase in traffic

Web Application Performance Optimization

Why is Performance Important?

47% of users expect a page to load in 2s or less40% of users will leave a page if it takes more than 3s to load46% will not return to a poorly performing site14% will start shopping at a different site if page load feels slow64% of shoppers will never return to a slow loading online shop

Ref: Seomoz.com, Akamai.com

Web Application Performance Optimization

Aspects of Performance

Page load timePage render timeTime to start interactionMaximum number of simultaneous users on siteMaximum number of logged in users on site

Web Application 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

Web Application Performance Optimization

Factors Affecting Performance

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

Web Application 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?

Web Application 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

Web Application Performance Optimization

Backend

Caching - page caching, caching in custom codeMemcache, APCCustom code - size? unused? admin? Custom code - reviewed?SQL queries - slow queries? query log? Indexing?SQL inserts - too many? logging?Disk writes - too many?Synchronous requests?

Web Application Performance Optimization

Frontend

Loading timeRendering timeComplexity of HTMLComplexity and size of CSSComplexity and size of JSNumber and size of static resourcesSize of images, PNG / JPGNumber of external resourcesSynchronous external resources

Web Application Performance Optimization

Caching Layers

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

Web Application 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-evaluate80:20 rule

Web Application Performance Optimization

Testing Performance

New Relic monitoringApache ab testingApache JMeter load testing

Web Application Performance Optimization

Performance Tools

MySQL query logsEXPLAINProfiling and tracing using xdebughttp://webpagetest.org/Yahoo YSlow, Google Page SpeedFirebug

Web Application Performance Optimization

Zyxware Technologies and Drupal

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

Service Providers from India listed on drupal.org

● Over 50,000 websites use our modules and themes

● More than 35 contributed modules and themes

● Maintainer of Search404, a top 200 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

Web Application Performance Optimization

● 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

Web Application Performance Optimization

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

• Mail us at [email protected]

• 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

Web Application Performance Optimization

• https://blog.radware.com/applicationdelivery/applicationaccel

erationoptimization/2014/01/55-web-performance-stats-youll-

want-to-know/

• http://www.slideshare.net/fabianlange/full-stack-web-

application-performance-tuning-presentation/23

• http://www.slideshare.net/takinbo/web-application-

optimization-techniques

• http://www.slideshare.net/bonoseo/web-performance-

optimization-wpo/17-

Performance_Test_Toolsbr_Loadsinwwwloadsinbr_Slow

• http://www.slideshare.net/CodeFireTech/web-application-

performance

References

Web Application Performance Optimization

Thank you