📜 ⬆️ ⬇️

Choosing a plugin for caching WordPress: benchmarking 18 plugins



When developing our own website, we always want to reduce download time to a minimum, and many have done so almost in sports, trying to gain at least 1/10 of a second. We all know how important caching is, but there are many ways to fool yourself by looking only at the estimated load times. For the test, we tried to find several different caching plugins and check their performance.

A small note about caching


Google recently announced that all mobile-friendly sites (and speed is the path to being “friendly”) have a significant advantage in search results starting April 21. You may have already seen the tag "mobile friendly" in the search results. And in Google Page Insights, the very first panel is adapted for mobile devices, and not for desktops. Google’s intentions are clear and loud for any SEO specialist or webmaster. Now it is important to work on the performance of both the desktop and mobile versions of the site, which we tried to display in benchmarking.
')
There are several ways to improve site performance and reduce download time, but for most webmasters, using a caching plug-in is not only one of the simplest, but also the only way to achieve maximum results.

WordPress (and most sites on the CMS) dynamically form pages on the fly, which requires multiple database accesses to get different pieces of content. Caching these dynamically generated pages allows the user to see ordinary HTML pages. This significantly reduces boot time and offloads the server.

Details of the test


The original idea was based on the use of both the simplest theme such as 2014 and the more complex theme, which will allow you to model a more “real” site. But during the tests, it turned out that the effect of plug-ins on the download speed of the site with the theme “2014” was minimal, and there is almost nothing to write about. But there are many techniques to improve the performance of “2014”, so server tuning is more important here, not caching.

In order to make the tested empty site as close as possible to reality, the Novelty theme from Tesla Themes was used. The test page of the site was created using graphics and text, a sidebar and some plugins were added (news output, feed from Twitter / Instagram). Now we have a page that takes a relatively long time to load. Yes, this WordPress hosting was used as a hosting .

Plugins tested:


Left over:

Brutal Cache - just did not work; Batcache - a plugin with a dependency on Memcache, which was not used in the current test. Autoptimize and Widget Cache were also left behind, since they are support for other plug-ins, these are not completely independent plug-ins.

Hosting and benchmarking tools


During the tests, we worked with a shared hosting account, similar to most other options. Thus, we get the download speed achievable for "budget" users. The site under test had no attendance, search bots did not enter it during testing. The server worked with Ngnix as a proxy, and not with pure Apache.

The tools used by Google, GTMetrix and Yahoo were used as tools. Thanks to this, it became possible to test not only the speed of loading pages, but also other factors, including:


Google PageSpeed ​​Insights


The PageSpeed ​​Insight service checks the site both from the point of view of the desktop PC and from the side of the mobile device, giving a rating on a 100-point scale. Page Speed ​​Insights is easy to use, but provides a relatively raw result that does not provide a complete understanding of what can be improved. Even though the tool gives an idea of ​​some of the things that Google may find important, the information provided by GTMetrix and Yahoo is much more complete.

At the same time, Google does not take into account the CDN during the assessment, so in some cases the assessment is too low.

GTMetrix and YSlow


GTMetrix and YSlow are based on a resource performance guide from Yahoo , scores are also given on a 100-point scale. These tools are much more sophisticated in terms of measuring. PageSpeed ​​Insight gives just a few tips on what can be improved, while GTMetrix YSlow works with at least 50 different metrics. GTMetrix also offers a waterfall chart, dissecting the boot process, as well as a very advanced boot history. If you want to understand how to improve the performance of your resource, this is one of the best tools.

Timing


In benchmarking, the following tools were used to determine the page loading speed and test server operation under load.

Apachebench


ApacheBench is a great tool that helps determine how many requests per second a site can withstand using various plugins. The test was carried out with sending 1000 requests for 10 different threads. The test was performed 10 times with fixing the best result for each of the plug-ins.

It should be noted that the use of Nginx somewhat reduces the difference between the work site with plug-ins / no plug-ins. One can argue about this, but in the case of using Nginx there is a twofold difference compared with Apache.

Pingdom


Pingdom is a well-known service for monitoring and testing. With each plug-in 20 tests were carried out, with fixing the best result. Note that the server was located in Sweden (Stockholm), and the Pingdom server - in the Netherlands (Amsterdam).

Webwait


Webwait is a simple but very useful tool. The main task of the service is to show how long the page will be fully loaded in your browser. Thus, it is not a server tool, the service runs locally. Webwait loads the page again and again, and then shows the average result. In our case, the download method was chosen via Ethernet, Opera browser. Each page was loaded 101 times to obtain the average and median load times.

So, with a description of everything, now we proceed directly to the tests.

Google, GTMetrix and Yslow


The pages of the site were tested using the specified services, here is the result:


As you can see, some plugins here simply didn’t show up at all - the assessment is the same or very close to the assessment when caching is not used at all. Google gave the best Supercache rating for both desktop and mobile devices. In GTmetrix and Yslow, we see that Fastest Cache Rocket is ahead of the rest. We tend to rate the latter values ​​as more important, because Google Page Insight uses fewer factors to evaluate.

So, the best plugins were WP Fastest Cache, WP Super Cache and WP Rocket Cache. Winner - WP Super Cache with work via mobile device. Mobile caching has also been enabled, not forgotten.

Timing


As mentioned above, the estimated points are more a measure of the quality of the site code. They give an understanding of what can be done to speed up the site, although a higher score from the site does not mean that it loads faster than other resources. And this is a mistake - the evaluation tools provide ideas for improving the site to reduce download time, but the load time is not taken into account sufficiently. You will understand this by looking at a screenshot from Pingdom.


As you can see, the test page received 96 out of 100 points, which is probably better than 99% of the pages of any sites. However, this page takes almost 35 seconds to load. Is the result correct? Make a conclusion yourself :)

Timing is an important test, because here a real measurement of the speed of loading pages of sites is carried out.

Apachebench


So, we are testing our server for its ability to support the execution of a large number of requests. The higher the number of requests per second, the better.


Without caching, the server shows the result in 18 requests per second. This is a pretty good result, which was made possible through the use of Nginx. Each request takes approximately 1/500 of a second.

Here we see that Hyper Cache Ext, WP Fastest Cache, WP-Cache.com and WP Rocket improve the result by 300% compared to working without caching. WP Rocket is the fastest and WP-Cache.com ranks second.

The advantage of using caching plugins is evident here - you can keep up to three times as many requests. Using Nginx, a good caching plugin, and maybe something like Varnish, you get a server that flies.

Pingdom


Without caching, the result is about 2.8 seconds. Using almost any plug-in improves the result at least twice.


Webwait


Here both average and median result is shown when testing in Webwait. The download time is a bit shorter, since the Swedish Webwait server was chosen (remember, this is a browser based tool, not a server tool).

Average load time



Median load time



As you can see, the almost unknown WP-Cache.com works quite well.

Non caching single


Of course, not everything depends on caching. An important role is played by such factors as the choice of Apache, Nginx, etc., the correctness of the settings, the type of server (dedicated, VPS, shared), the number of images and their optimization, HTTP requests. Actually, almost all know about these factors on “Habré”, so we will not dwell on them.

Conclusion


All plug-ins that are presented here have different functionality. Some are very simple, while others can be compared with a Swiss knife. Super Cache, W3, and other plugins are often used by pros who are familiar with CDN and other tricks. Other users prefer to work with simpler plugins like Lite Cache and WP-Cache.com. By the way, WP-Cache.com, as mentioned above, is a little-known plugin that showed excellent results.

Who is the winner?


In the first place is WP-Rocket , a paid plugin, on which a whole team of specialists is working. For the installation, the developers ask for $ 39, and for the unlimited - $ 199.

In second place - WP Super Cache . Here the results are almost the same as the leader.

In third place - WP-cache.com , deserved winner. It seems that no less capable developers worked on the creation of this plugin than on WP-Rocket. This plugin is very easy to configure, so if you do not want to bother with the configuration, we recommend it.

Source: https://habr.com/ru/post/263781/


All Articles