High Performance - Joomla!Days NL 2009 #jd09nl

  • Published on

  • View

  • Download

Embed Size (px)


Presentation on Joomla!Days Netherlands by Fotis Evangelou


  • 1.High Perfomance a guide for optimizing the performance of Joomla! websitesby Fotis Evangelou (JoomlaWorks) www.joomlaworks.gr Joomla!Days Netherlands - 12 & 13 June 2009

2. What's covered in this session Basic principles of web content delivery Prepare Joomla! for prime time Optimize our template and our content Configure hostingwww.joomlaworks.gr 3. Basic principles of web content delivery The closer the server is to the user, the better - DNS lookups (avoid redirects) - The concept of the CDN (Content Delivery Network)Browsers use 2 HTTP connections per domain to download content - Increase website download time using subdomains/CDN - Combine CSS files - Combine Javascript files - Combine layout images into spritesAll modern browsers accept compressed content sent from the server - Compress HTML, CSS and Javascript codewww.joomlaworks.gr 4. Prepare Joomla! for prime time Prepare the tools for your work - Install Firefox with Firebug, YSlow and Web Developer ToolbarGlobal Configuration - Enable Joomla!'s built-in cache mechanism - Enable GZIPExtensions - Choose extensions that properly separate content from layout/behaviour disable their CSS/JS includes and call CSS/JS code into your template where possible. - Enable caching for modules www.joomlaworks.gr 5. Optimize our template and our content- Combine and compress - using Gzip - CSS/JS files - Do not pack your JS code, feel free to minify - Use one JS library/framework - Initiate JS code into as little onload events as possible - Put all your layout (non-content) images as background images in your template's CSS file - Combine all your layout non-repeating images into one big image (sprite), use CSS positioning to displaywww.joomlaworks.gr 6. Optimize our template and our content- Resize/resample content images manually or use a plugin to do that - Understand when to use GIF, PNG or JPEG - Enable debug in Joomla!, check the number of queries with cache on and off. Identify slow queries in PHP code. - Dynamically replace URLs to point to subdomains/CDN (make site.com/images/ show up as images.site.com) www.joomlaworks.gr 7. Configure hosting- Optimize MySQL depending on your needs and taget audience - Use a CDN for image, CSS, JS and other static content delivery - Split website load into 2 servers (if possible): one acts as web server, the other as database server www.joomlaworks.gr 8. Case study: gazzetta.gr www.joomlaworks.gr 9. Thank you www.joomlaworks.gr