Slow loading websites make you lose potential customers.
Let's face it: Drupal websites at times can get a bit slow if not configured and monitored properly. Especially when you've added a whole bunch of modules, blocks, images and content over time. Here are 10 tips to instantly boost your Drupal site's overall performance:
1) While developing a website, we invariably add tons of modules for testing and usually end up not using all of them. Each and every module which was added and enabled adds to the page load time. So head over to the Modules Section right now and disable (preferably uninstall!) all the unused ones.
2) While you're there in the Modules Section, you should also disable 'Update Manager'. The job of Update Manager is to keep checking for modules that are out of date and ready for an update to be applied. This adds load to the server. Run updates manually at fixed monthly schedules or run them on a dev install rather than the Live Site.
3) Optimise images. Not really a Drupal action point. Nevertheless an important legacy task. Always optimise jpg and png images on the site. Reducing sizes by even 30% can make a big difference.
4) Reduce the Cron Frequency. Head to the Drupal Configuration Section and choose Cron. You'll notice that it's 3 hours by default. You can set this to a lower frequency like 12 hours or a Day. Better yet, disable it and run Cron manually from the server.
5) Enable Page Caching. Drupal 7 has an excellent caching module in place and yet not many people enable this at site launch. Head to the Configuration > Performance section and enable Cache Pages, Cache Blocks. So from now on, each page is served from a cache table without numerous queries being run all the time. This makes a huge boost in overall site performance!
7) Install and Enable the Boost Module. Probably one of the most powerful tweaks you can perform on your website in a shared hosting environment! The module essentially converts your Drupal pages into static HTML cache files. So pages are served as cached HTML without any PHP requests, database access etc. This makes Drupal sites blazing fast. Note that this is for anonymous users and the advanced module will need some extra work to set up. Boost requires cron & clean urls to be working; you will also have to edit your .htaccess and robots.txt files. I won't recommend this module for sites where content updates have a high frequency.
8) Disable the PHP Filter Module. This is recommended not just for performance but for security as well.
9) Install the Fast 404 Module. Drupal has expensive 404 errors. On an 'average' site with an 'average' module load, you can be looking at 60-100MB of memory being consumed on your server to deliver a 404. Consider a page with a bad .gif link and a missing .css file. That page will generate 2 404s along with the actual load of the page. You are most likely looking at 180MB of memory to server that page rather than the 60MB it should take.
That's where Fast 404 comes in. This module delivers super fast 404 error pages for both missing images and bad paths. Depending on which method of implementation you choose (aggressive or super aggressive) you can deliver 404 errors using less than 1MB of memory on your server.
10) Syslog vs Database Logging. In the Modules Section, disable Database Logging. Enable Sys Log instead. Both modules are similar but Syslog writes log messages to a server log file rather than the Database. This frees up resources and reduces page load. Also disable the Statistics Module and go with Google Analytics instead.