107 – Five Reasons Your Site Loads Slowly
Announcements
WordPress Webinar about Custom Post Types is on January 4th at 10am EST
New Media Expo
– If you are going to be in Vegas, please let me know, I’d love to meet you!
Sign up for my newsletter to be the first one to register for my upcoming course!
Tools / Plugins
- 5 Second Snow (http://codecanyon.net/item/5sec-snow/851002)
- tools.pingdom.com
Listener Feedback
Chad Warner (optimwise.com)
Left his method of teaching people how to use WordPress
Matt Shane(mskdigitalmedia.com)
Also called in and shared how he is creating videos to help his clients learn WordPress.
Andrew H (impact-images.com.au/)
His website is taking up a lot of room on his server. He wonders how he can make it smaller.
– Are you storing full size images on your site?
– Are you backing up your site to your host?
– My site is 309MB and that includes all plugins and theme files as well.
Jacob (inticemedia.com)
Jacob provides a great resource to find people to do work for us. It’s a site called http://odesk.com. You can find people who work locally or overseas. One benefit of hiring someone overseas is that they are working while you sleep.
Main Topic
Too Many HTTP Requests
– Combine multiple scripts and css files into one
– Combine images with spriteds
– Use few images
Minimal Client Side Processing
– Validate forms on the client’s site
– Use AJAX to only require small parts of the page to change in response to user actions, you make your site or web application much more responsive and efficient.
Failure to Use Browser Cache / Local Storage
– Adding an Expires header to your components with a date in the future makes them cacheable, reducing the load time of your pages.
– Caching items that do not change regularly on your site, images, scripts etc
## EXPIRES CACHING ##
ExpiresActive On
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/gif "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/pdf "access plus 1 month"
ExpiresByType text/x-javascript "access plus 1 month"
ExpiresByType application/x-shockwave-flash "access plus 1 month"
ExpiresByType image/x-icon "access plus 1 year"
ExpiresDefault "access plus 2 days"
## EXPIRES CACHING ##
Too Many Bytes
– Use compression to make code smaller
– Using less code in templates
– Image optimiazation (http://smushit.com)
– CSS minification
– Pagination
– Ajax
Not using a Global Network
– One very common mistake is to ignore geography. If your site is hosted in a NYC data center, there is a huge difference in latency for users in Boston versus users in California (let alone Asia). Serving content from the edge is the role of the traditional CDN. Using a cloud provider to distribute your content to even more locations so users always pull from a server near them is even better.
Call To Action
- Sign up for webinar at http://yourwebsiteengineer.com/webinar
@DustinHartzler Just in time! Was about to do some research on that for one of my sites.
Dec 19, 2012@GuppyFishWeb Awesome #LovePerfectTiming
Dec 19, 2012Thanks for the podcast. Here are some tools I have used to help improve my site’s performance:
Dec 20, 2012– W3 Total Cache or WP Super Cache plugins work great to cache your site’s assets
– Cloudflare works like a CDN and provides both caching and security benefits as well. It’s free service works well but you need access to your site’s advanced DNS settings.
– Another great tool is Codekit. It is mainly a pre-processor for SASS / SCSS and other languages but also has code compression as well as image compression built it. It costs a little over $20 but is well worth it. Codekit also supports Compass automatically which as a feature that can automatically create sprites. If you want to learn more about any of these topics check out CSS-tricks.com. Chris Coyier does a great job of providing screencasts that breakdown these complex topics into manageable pieces.
– If you are optimizing your images outside of WordPress you will probably have to FTP them into your uploads folder. The problem with that is that WordPress does not automatically add them to your media gallery when using FTP. However if you use the plugin “Add to Server” you can add all of your optimized images at once.