====== Speeding Up Page Load ====== There are a few things you can do to help speed up your site, that are highly recommended on high traffic sites. **Quick Checklist:** Click on each item for section giving full details. * [[#turn_off_new_icon_feature|Turn off new icon]] * [[#category_levels_displayed_in_category_dropdowns|Lower # of category levels displayed]] * [[#caching_system|Turn Cache ON]] * Turn SEO setting "Convert Accents" OFF((In **Addons > SEO > General Settings**, un-check box for **Convert Accents**. Due to the advanced string manipulation required, this feature greatly increases the amount of time it takes to re-write all the URLs on the page to be search engine friendly.)) * [[#set_up_cron_heartbeat|Configure Cron Heartbeat]] ===== Turn off "New Icon" Feature ===== The "new" icon that displays next to each category that has any "new" listings in it, takes a lot of resources to calculate whether there are new listings in each category. We recommend to turn this feature off, as the more listings and/or categories you have, the more resources it will take to calculate if there are new listings in each of those categories. You can turn the feature off in your admin panel at: [[admin_menu/site_setup/browsing_settings/start|Site Setup > Browsing Settings]] Change the setting **"New Listing" Time Limit:** to the first selection, **no display of new listing icon**. The new icon requires it to "count" the number of listings in each category placed within a certain time period "on the fly", which creates a huge load on the database for high traffic sites. To a lesser degree **this is true for category counts** as well, since when a site filter is applied, it requires the software to count the number of listings in a category "on the fly". If your site makes heavy use of filters such as Geographic Navigation, Zip Search, etc. **you may consider turning off category counts** to speed page load times. ===== Category Levels Displayed in Category Dropdowns ===== The following setting within the admin can have significant affects on the speed of client side SITE SETUP > GENERAL > Levels of categories in Dropdown (client side) You should only need to adjust this significantly if you have module and/or functionality on the client side that display a category dropdown and you have a significant amount of categories on your site. One of the modules that displays a category dropdown if set to use it is the Search Module 1. Within this module you can display the categories of the site for the client to choose to search. This dropdown must be created each time by the script. Creating the dropdown includes running the sql query on the database, getting the result of that query from the database, building that dropdown from the sql result and then pushing that dropdown to the client's browser. When thousands of categories are involved it can take several seconds for that page to completely display. That is where the above setting comes into affect. Reducing the levels of categories to be displayed in this category dropdown can drastically affect the time needed at each step of building the category dropdown. So if you have a large amount of categories and display functionality that has a category dropdown within it play around with this setting to see what affects can be made. Turning on caching within the Geo system can save much of this time but if you choose to display all your categories that run into the thousands we still recommend limiting the display of levels of categories. Your clients would still need to download the content of the dropdown from your site each time again slowing the page down somewhat. ===== Caching System ===== You can improve the performance of your site further by the use of the Cache system. This feature can be found in your admin tool at the following location: SITE SETUP > CACHE And explained further here in the support wiki: [[http://geodesicsolutions.com/support/wiki/admin_menu/site_setup/cache/start|Cache Explanation]] ===== Set up Cron Heartbeat ===== By default, the software will send a "signal" to run the cron heartbeat((Basically, the **cron heartbeat** is responsible for doing all the normal "bookkeeping" type things, like closing listings, sending out notification e-mails, etc. Without it, a lot of things would never get done in the software.)) every time someone views a page in the software. This is done so that the cron heartbeat gets run and works even on servers that do not have ability to use cron tasks. If you have a high traffic site however, this can really bog down the site as each page load results in 2 loads, one to display the page, and another to run the heartbeat. You can improve this greatly by setting up a cron job on your server to run the heartbeat once a minute or so. See the page below for more information on how cron jobs and the cron heartbeat works: [[/admin_menu/site_setup/cron_jobs/start|Cron Jobs]] ===== Reduce Uploaded Image Size ===== This support wiki page explains [[startup_tutorial_and_checklist:feature_configuration:file_upload:reducing_image_file_size|lowering image quality to reduce image file sizes used by the software]] =====Implement New Features in v7.3 onward===== These changes include changes to "minify" all your css and js files into one smaller file. Then also to force any non essential css/js for opening page load to be moved to the footer of the design so it may be loaded last. Those features can be found here in the admin tool: DESIGN > SETTINGS > Combine, Minify, and Compress CSS and JS (Recommended for Live Sites) DESIGN > SETTINGS > Use {footer_html} to delay loading of certain javascript