With the advance of technology, the price for extra CPU, Memory and Network bandwidth units has become negligible. Thus it has become affordable for most hosting providers to maintain very fast and powerful servers.
While the above is true in most cases, some hosts such as SiteGround have gone beyond the industry standards. We are proud to announce that the load on our servers is kept much below the server's capacity. This allows us to support almost every kind of site - from small personal sites to corporative business portals, from simple PHP scripts to huge forums.
Though no matter which your host is and how fast and optimized its servers are, your site may still load slowly. There are many factors, which affect negatively the site performance such as:
Very often it takes just a few steps to make your site load much faster. This could involve enabling cache, removing heavy modules or something else. There are plenty of articles on the net available for just about any web application. According to the application you use, find the correct link below:
In order to troubleshoot such issues you have to check the internet connectivity to your server. Here are some tips:
Most shared hosting servers are situated in the USA which is a priority destination for all Internet service providers. You can find where your site is hosted from here.
Connectivity affects greatly your site when on it you have:
This is probably the most common case for a website being slow. There are many helpful tools for investigating this problem. We recommend this web page analyzer and Firefox's addon called YSlow.
Here is what it includes:
A MySQL query is considered slow and heavy when it is executed for longer than 1 second. Such queries are not common and that's why they are logged for additional troubleshooting. Every host keeps such logs (when there are any) and should provide them upon customer's request.
Once your host provides you with the slow queries log, you will know which MySQL queries are slow. Then you can begin optimizing your code and database. There are many useful resources on the web to get you started but very often this task requires advanced programming skills.
When you include remote resources you are already slowing down your site. Sometimes this will have little or no effect (Google Adsense for example), other times it will slow down pages with seconds (RSS news feeds).
A good practice is to make sure that the remote resource is not downloaded for each site visit. For example, if you have a news RSS feed, you should set a cron to download the news each hour and then include it in your page. Generally, any kind of content caching will help in such cases.
Unfortunately, this is not applicable for dynamically loaded content when it is important to have fresh results (gaming servers status queries). In such cases you can do little but to accept this drawback.
The first case is when a page includes too many articles, chatboxes, weather modules, flash animations, etc. Then, in order your page to load it will execute hundreds of sub-scripts which make many database queries, load content worth megabytes and so on. If you take a look at popular web sites or portals, you will find that most of them are kept as compact as possible. This is because each additional content slows down regardless of how powerful the host server is. This is exactly what we recommend - keep your website as compact as possible. Adding too much content usually just slows down your website and confuses your visitors.
Other times there are just buggy scripts making loops, others which are being closed incorrectly and so on. Slow scripts may also include incorrectly resized graphics or try to preload big flash animations. In such cases it is a good idea to try opening images / flash animations outside of your scripts and see how long it takes them to load.
As we have mentioned earlier, the price for extra CPU, Memory and Network bandwidth units has become neglectable. Though there are still limits and every server has a certain limit to its capacity. Along with that, web applications become more resource demanding by default and their needs grow very fast when the site's popularity increases. Naturally, any server's capacity can be exceeded when the server is overloaded with unstable performance.
Thus, if you have not planned correctly the scalability of your website, there will be slowdowns if not even service interruptions. Estimating the exact needs of your website is very hard because there are no general truths. For example, no one can estimate how much memory / CPU is needed for a forum with 1000 users. An SMF forum with 1000 users and 100 000 posts may perform as good as a vBulletin forum with 2 000 users and 50 000 posts.
Here is the place to mention an interesting phenomenon called the Slashdot effect. It is observed when a popular website features a smaller one, forwarding an unexpectedly high number of visitors to it. Usually this makes the smaller site totally inaccessible. A similar result can be accomplished by a very aggressive marketing campaign.
That's why it is generally wiser to ensure more server resources than your current needs seem to be. This will allow you to develop and grow firmly your online presence while keeping your site stable and fast.
When thinking of scalability you have to take into consideration the provided RAM Memory and CPU units. Generally your options are:
Shared hosting account - provides shared server resources (not strictly predefined) to many websites
Pros:
Cons:
Semi Dedicated hosting account - brings the shared hosting to the next level. The clients get much more server resources to support the increasing demands and stable growth of their websites
Pros:
Cons:
Cloud hosting account - an innovative technology that allows unlimited number of machines to act as one system.
Pros:
Cons:
Dedicated servers - preferred by professionals who have better understanding of their sites' needs
Pros:
Cons:
Here are some tips on how to improve the performance of your Joomla 1.0.x website:


The internal statistics system of Joomla 1.0.x is known to create a heavy server load and function slow. Therefore, you should disable it in order to improve the performance of your website.
In order to do this, first login to the administrative area of your Joomla 1.0.x website and click on the Global Configuration button.

In the page that opens, you should select the Statistics tab.

In the next page, set the values of Statistics, Log Content Hits by Date and Log Search settings to "No". Once you have that, press the "Save" button in the top-right part of your screen.

Well done! You have successfully disabled the statistics in your Joomla 1.0.x website and improved its performance.
There are several things that you can do in order to improve the performance of your Joomla 1.5 website:


echo '<pre>'.print_r(get_included_files(), true).'</pre>';
If you have more than 150 files included the number is high and suggests slow page loading.
There are several steps that you should follow in order to improve the performance of your Drupal-based website:
First, you should enable the caching system of your Drupal application. In order to do this, login as administrator and go to the Administer -> Site Configuration -> Performance menu. In it, set the values of Caching Mode to "Normal" and Block Cache to "Enabled". Then, click on the "Save configuration" button at the bottom of the page.

Next, you can disable all the modules/blocks that you are not actually using. To do this, go to the Administer -> Site Building -> Modules menu. Note that the enabled modules have a check in the "Enabled" column. Remove this check for all the modules you want to disable and then click on the "Save configuration" button at the bottom of the screen.

Finally, you should optimize your Drupal database. For more information on that matter, please refer to our article on How to optimize a MySQL database.
In addition, you can try reducing the content you are displaying on your front page. Too much links/images/scripts on your main page can signifficantly increase the time your website needs to load.
Here are some tips on how to improve the performance of your WordPress blog:
In order to optimize the performance of your SMF forum there are some useful hints which you might want to implement.
The reason for this solution to decrease the overall server load generated by your forum is that SMF considers the avatars uploaded in the default folder as attachments and every loading of an avatar image invokes the index.php file. Moving them in a separate folder allows SMF to handle them as regular images.
To complete the specific optimization open the SMF admin area->Attachments and Avatars->Avatar Settings->Uploadable avatars. Pick the Specific directory... option from the Upload avatars to... drop-down menu.
Specify the Upload directory. For example you can put /home/user/public_html/forum/avt. You should create the new folder under your account. If you are using web hosting services from SiteGround you can create a new folder through cPanel->File Manager.
The Upload URL: value will be http://yourdomain.com/forum/avt/
The existing avatars can be moved using an FTP client. Also, you should execute the following MySQL query in the database:
UPDATE `smf_attachments` SET `attachmentType` = '1' WHERE `smf_attachments`.`ID_MEMBER` != 0
The query can be executed through cPanel->PhpMyAdmin.
The procedure can be completed from your SMF admin area->Configuration->Features and Options->Layout and Options. Make sure that the Disable hostname lookups? option is turned off. In this way reverse DNS queries will not be executed once a forum page is accessed.
If you have enabled the Search option for your forum and it has grown quite big it is recommended to set a search index. Such a solution will increase the disk space used by your forum, but it will significantly improve the speed of the search queries. For large forums use the Custom search index. It can be set from the SMF admin area->Forum->Search->Search method.
This feature can be disabled by entering 0 in the SMF admin area->Configuration->Current Theme->Themes and Settings->Number of recent posts to display on board index field. This will improve the server performance since the compilation of the list can be a quite resource consuming process if there are many groups with posts.
If you do not need this feature on the forum, it is recommended to disable it. The reason is that the calendar functionality looks for an event on every thread load. The option can be disabled from the SMF admin area->Forum->Calendar->Calendar Settings.
This solution is suitable for large forums that usually run on a dedicated hosting solution. It requires the presence of one of the following accelerators: eAccelerator, Memcache, APC and more. It can be enabled from the SMF admin area->Configuration->Server Settings->Caching.
This tutorial will show you how to optimize your phpBB2 forum. You may also take a look at our Converting from phpBB2 to phpBB3 tutorial. We recommend upgrading to phpBB3 because the new version offers many new features and enhanced security.
There are several things you can do to optimize the performance of your phpBB2-based message board.
Make sure your phpBB2 forum is upgraded to the last version of the branch - 2.0.23. You can downlad the official installation/upgrade package from the phpBB official website.
You should do everything possible to prevent spam bots from registering and posting in your forum. If spam bots manage to register and start posting spam topics/replies, this will signifficantly increase the size of your forum database. This, in turn, will slow down your entire forum.
To prevent your forum from being overrun by spam bots, you should log in to your forum's admin area and click on the "Configuration" link in the left menu. There set the following settings:
Disable the search function for guests and allow it only for registered users. Information on how to do this can be found in this article.
Do not add extra mods unless you really need them. Many forum plugins cause high server load and increase the size of your database.
If you have a large forum with thousands of members, you could try implementing the tweaks described in this topic.
Optimize your phpBB database by following the instructions in our article on How to optimize a MySQL database.
This tutorial will show you how to improve the performance of your phpBB3 forum.
Keep your application up to date. It is important to upgrade your forum when a new version is released. Latest application versions contain important bug and security fixes.
Disable the search function for guests and allow it only for registered users. Instructions how to do this can be found here. This will block attacks that use your forum's search option.
Do not add extra mods unless you really need them. Adding many mods to your forum can signifficantly increase the size of its database and thus cause high server load. You should use only mods that you actually need.
Protect your forum against spam bots. If your forum is attacked by spam bots, thousands of topics and posts can be added to it in a very short period of time. This will greatly increase the size of your phpBB database, which in turn will slow down your forum.
To prevent your forum from being overrun by spam bots, you can make the following changes to your forum's configuration:
Enable the visual confirmation for new users. You can do this from the "Visual confirmation settings" menu under the "General" tab in your forum's admin area. In this menu set the following settings as follows:
Optimize your phpBB database by following the instructions in our article on How to optimize a MySQL database.
Here are some tips on how to improve the performance of your vBulletin forum:
To improve the performance of your Zen Cart-based website, you can make these changes:
In order to improve the performance of your osCommerce-based website, you can make these changes:
To improve the performance of your e107 website, you can make the following changes:
SugarCRM is the world's leading provider of commercial open source customer relationship management (CRM) software. Sugar easily adapts to any business environment by offering a flexible, cost-effective solution to your needs.
By default, its loading time is above average. You can, however, further improve the performance of the application by making the following changes in its configuration:
Here are some tips on how to improve the performance of your Mambo website:
Usually, such issues are caused with old forum extensions that are attacked by spam bots. The tables that store the forum posts get filled with spam and become really big. This slows the entire performance of your website. Such tables should be deleted manually using the PhpMyAdmin tool. To delete a table mark the check box left to it and click on the red cross icon. Confirm the changes to permanently erase the table
Make sure you are deleting tables, created by extensions you have already uninstalled from the Mambo back end! If you delete any of the Mambo's core tables this will render your website to be inaccessible!
Here are some tips on how to improve the performance of your Mambo website:
Usually, such issues are caused by old forum extensions that are attacked by spam bots. The tables that store the forum posts get filled with spam and become really big. This slows the performance of your entire website. Such tables should be deleted manually using the phpMyAdmin tool. To delete a table, mark the check box left to it and click on the red cross icon. Confirm the changes to permanently erase the table;

Make sure you are deleting tables created by extensions you have already uninstalled from the Mambo backend! If you delete any of Mambo's core tables this will break your website's functionality!
MediaWiki is among the most scalable web applications. Its efficient design allows it to support sites as huge as Wikipedia while at the same time it can be perfectly optimized even for the smallest personal wiki.
1. MediaWiki optimization through Caching
Mediawiki supports a wide variety of caching options such as Memcache, eAccelerator, Database and others. In our case we will use a simple file caching because it works on any kind of server and does not cause additional MySQL overhead.
In order to enable the File Caching for MediaWiki please open your LocalSettings.php file. Then at the bottom add the following 3 lines:
$wgUseFileCache = true;
$wgFileCacheDirectory = "/home/YOUR_USER/public_html/cache";
$wgShowIPinHeader = false;
The first line enables the file caching option. The second line specifies in which directory the cached content should be stored. The third option is required because of a dependency.
Besides that make sure to comment (delete) the line which contains $wgMainCacheType variable in order to avoid a misconfiguration.
Finally, access your wiki pages for a while and then check the size of the "/home/YOUR_USER/public_html/cache" directory. If the cache is working this directory size should increase slowly.
2. Optimization tweaks
Check your MySQL slow log and see what slow queries you have for the MediaWiki database. Very often slow queries are caused by certain options such as the Page Counters. Here is an example MySQL slow query:
Executed 37 min ago for 2 sec on Database --> YOUR_USER_wiki.
UPDATE /* 127.0.0.1 */ `page` SET page_counter = page_counter + 1 WHERE page_id = 8
In this case you will be forced to turn off the Page Counters. For this purpose add the following lineto your LocalSettings.php file:
$wgDisableCounters = true;
Your MySQL slow logs may vary. That's why try searching for disabling the functionality associated with them.
Very often Gallery2 (2.3 branch) has problems with slow MySQL queries. Generally slow queries mean slow page loading and server overloading. That's why such issues should be addressed as soon as possible.
In this article we will address the two most common problems - large sizes of CacheMap and SessionMap tables. By default these tables will have the prefix g2_ in front and they are responsible for content caching and user sessions storage.
We will start with the CacheMap table first. Generally caching is good but sometimes the complex Gallery2 engine makes it slower / more resource demanding to retrieve the content from the cache then to regenerate it. To solve this issue two things have to be done:
1. Log in your Gallery2 admin panel and go to Performance under Admin Options, Gallery. Choose 'No acceleration' both for Guest Users and Registered Users.
2. In the admin panel again, go to Maintenance under Admin Options, Gallery. For the task name 'Delete database cache' click on 'run now'.
Now we will proceed with the SessionMap table by completing the steps below:
1. In Gallery2 admin panel go to General under Admin Options, Gallery. Under the Session Settings set to 15 minutes both Session Settings and Inactivity Timeout. You don't have to change the settings for Site Administration Session Timeout to a lower value because it may log you out too frequently.
2. In the admin panel again, go to Maintenance under Admin Options, Gallery and for 'Delete user sessions' click on the action 'run now'.
The above steps will ensure that all current user sessions are deleted and are not stored for more than 15 minutes in the future. This will prevent future slow queries for the table SessionMap.
If you have followed the above steps, your slow MySQL queries problems should be resolved without sacrificing any of the Gallery2 functionalities.