The importance of Drupal Cache. Luis F. Ribeiro Ci&T Inc. 2013



Similar documents
Drupal Performance Tuning

making drupal run fast

Simple Tips to Improve Drupal Performance: No Coding Required. By Erik Webb, Senior Technical Consultant, Acquia

(An) Optimal Drupal 7 Module Configuration for Site Performance JOE PRICE

Accelerating Wordpress for Pagerank and Profit

E-commerce is also about

Bubble Code Review for Magento

Cache All The Things

Optimizing Drupal Performance. Benchmark Results

Web Performance. Sergey Chernyshev. March '09 New York Web Standards Meetup. New York, NY. March 19 th, 2009

Designing, Scoping, and Configuring Scalable Drupal Infrastructure. Presented by David Strauss

WompMobile Technical FAQ

Ensuring scalability and performance with Drupal as your audience grows

Drupal High Availability High Performance

Web Performance. Lab. Bases de Dados e Aplicações Web MIEIC, FEUP 2014/15. Sérgio Nunes

AUDIT REPORT EXAMPLE

WordPress Optimization

The Devil is in the Details. How to Optimize Magento Hosting to Increase Online Sales

4x High Performance for Drupal. Presented by Fabian Franz. Step by Step

Varnish the Drupal way

Common Server Setups For Your Web Application - Part II

Front-End Performance Testing and Optimization

Are You Ready for the Holiday Rush?

SiteCelerate white paper

79 Tips and Tricks for Magento Performance Improvement. for Magento Performance Improvement

5 Mistakes to Avoid on Your Drupal Website

Bubble Full Page Cache for Magento

Storage Made Easy Enterprise File Share and Sync (EFSS) Cloud Control Gateway Architecture

Performance testing Web 2.0

Simply type the id# in the search mechanism of ACS Skills Online to access the learning assets outlined below.

9 Tried and Tested Tips to Increase the Power of your Magento Store

Dynamic Content Acceleration: Lightning-Fast Web Apps with Amazon CloudFront and Amazon Route 53

Comparative Performance Report

MAGENTO HOSTING Progressive Server Performance Improvements

Learning To Fly: How Angry Birds Reached the Heights of Store Performance

Improving Magento Front-End Performance

Serving 4 million page requests an hour with Magento Enterprise

Content Management Systems: Drupal Vs Jahia

Distributed Systems 19. Content Delivery Networks (CDN) Paul Krzyzanowski

Setup The package simply needs to be installed and configured for the desired CDN s distribution server.

Nginx 1 Web Server Implementation

Wikimedia Architecture Doing More With Less. Asher Feldman Ryan Lane Wikimedia Foundation Inc.

Layers of Caching: Key to scaling your website. Lance Albertson -- Narayan Newton

Drupal Memcached Nginx

Kentico Site Delivery Checklist v1.1

Drupal CMS for marketing sites

Doug Goldberg. Vice President of Magento Solutions, ZeroLag

Developing ASP.NET MVC 4 Web Applications MOC 20486

Developing ASP.NET MVC 4 Web Applications

Content Management Systems: Drupal Vs Jahia

Bubble Full Page Cache for Magento

Open Source Content Management System for content development: a comparative study

Drupal Training Modules 2015

Sitecore Performance. Technical Deep Dive. Steve Green, Solution Architect

Reference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION

DNN/Evoq Performance Configuration Best Practices Guide

Building Success on Acquia Cloud:

Large-Scale Web Applications

Sitecore Health. Christopher Wojciech. netzkern AG. Sitecore User Group Conference 2015

CentOS Linux 5.2 and Apache 2.2 vs. Microsoft Windows Web Server 2008 and IIS 7.0 when Serving Static and PHP Content

Practical Load Balancing

Developing ASP.NET MVC 4 Web Applications Course 20486A; 5 Days, Instructor-led

Using Redis as a Cache Backend in Magento

An Open Source NoSQL solution for Internet Access Logs Analysis

Shell over what?! Naughty CDN manipulations. Roee Cnaan, Information Security Consultant

Middleweight Drupal Developer.

Performance Report for: Report generated: Friday, April 24, 2015, 7:29 AM (via API)

Elgg 1.8 Social Networking

Content Delivery Network. Version 0.95

ECE 7650 Scalable and Secure Internet Services and Architecture ---- A Systems Perspective

Creating Value through Innovation MAGENTO 1.X TO MAGENTO 2.0 MIGRATION

Optimizing WordPress Performance: Page Speed and Load Times. Doug Yuen

Ajax Development with ASP.NET 2.0

Site Audit ( /site_audit) Generated on Fri, 22 Aug :14:

Content Management System

Website Optimization Tips for Speed

Top Navigation menu - Tabs. User Guide 1. &

Performance Optimization For Operational Risk Management Application On Azure Platform

Wikimedia architecture. Ryan Lane Wikimedia Foundation Inc.

Getting Started with AWS. Static Website Hosting

Internet Content Distribution

SharePoint 2010 Performance and Capacity Planning Best Practices

CMS Diagnostics Guide

Transcription:

The importance of Drupal Cache Luis F. Ribeiro Ci&T Inc. 2013

Introduction Caio Ciao Luppi Software Architect at Ci&T Inc. More than 4 years of experience with Drupal Development Experience with Application Development and Support using Drupal 6 and Drupal 7 Platforms 2

Ci&T Inc. 3

Why use Cache? Faster response time will increase the user experience Optimizing / rewriting code is often expensive or not an option Lower data center costs Reduce the CMS Workflow overhead 4

Why use Cache? 5

Cache Options Drupal Modules/Distros - Page Cache - Boost Cache - Authenthicated Cache - PressFlow Other Cache Options - Varnish - APC - CDN (Akamai, Amazon CloudFront, Level 3) - Memcache 6

Page Cache - Out of the box Drupal page caching mechanism - Saves rendered pages directly into the database - By default only caches anonymous requests - Hook_boot and hook_exit are always called unless you re using the aggressive cache option 7

Memcache High-performance, distributed memory object caching system Reduces database hits Cached data is stored in web server memory It works awesomely if the database is in a different server 8

Memcache 9

Memcache Install High-level steps to install memcache 1. Install memcached daemon 2. Install and configure PHP memcache extension 3. Install and enable memcache Drupal module 4. Configure Drupal to use memcache 10

Boost - Module solution that provides static page caching - Signifcant performance improvement for unauthenticated traffic - Supports shared, VPS and dedicated hosting - Requires cron & clean urls to work properly - Have to edit.htaccess and robots.txt files 11

Boost - Flow 12

Authenticated User Page Caching (Authcache) - Most popular solution for authenticated caching - Caches final rendered HTML per role and makes AJAX calls to get user specific content - Ability to use different types of caching (database, memcache, etc...) 13

Authcache Flow 14

Authcache Disadvantages - Requires changes on how user-customized content is displayed - Increases development time and testing - Not suited for heavy user-centric content - Hooks for contributed modules may need to be added for compatibility 15

PressFlow - Drupal distribution with integrated performance, scalability and availability enhancements - Drupal 6 and Drupal 7 versions - Provides integration with Varnish and allows for MySQL replication - The key enhancements from Pressflow 6 were added to Drupal 7. 16

Varnish 17

Varnish - HTTP reverse proxy solution - Default caching solution used at Acquia servers - Focused exclusively on HTTP, unlike other proxy servers that often support FTP, SMTP, etc - Supports load balancing 18

CDN Content Delivery Network - Geographically distributed servers - Delivers the fastest possible download for all users based on location - Focused on files (resources) referenced by the HTML, such as CSS, JavaScript, fonts and images - Free CDNs: CloudFlare, Coral Content Distribution Network - Commercial CDNs: Akamai Technologies, Amazon CloudFront, Level 3 Communications, etc 19

What if we use them all 20

Cache ~20ms ~100ms ~200ms ~600ms ~2000ms 21

Front-end Improvements Sprites Compressing images Minify and aggregate JS and CSS files Using tool that will help you to analyze and improve front-end performance (YSlow, Web Page Analyzer, Firebug, etc) 22

Benchmarking / Load Test Load testing tools Loadrunner Jmeter Etc Analyze results Response Time Throughput 23

Load Test CDN & Page Cache Example 50s BEFORE 0 to 500 Vusers 13s AFTER 0 to 500 Vusers

Load Test CDN & Page Cache Example 4,500,000 BEFORE 9,500,000 AFTER 25

Problems / Risks Authenticated users Caching what s not supposed to be cached Dynamic/random content Personalized content Etc Actual content and cache can be out of sync 26

What to do when nothing works

Troubleshooting Clear cache (Drupal, Varnish, CDN, etc ) and try again Force a new request using random query strings (?asdasdasd) Disable cache for authenticated users Use helper tools/modules/modes (debug mode, memcache interface, etc ) 28

Questions? Questions? 29