Customer Success Story

How Online Fashion Store IzyShoes Reduced Page Load Time by 93.5% after Implementing LiteMage Cache for Magento

In this case study we take a look at how IzyShoes, an online fashion store built on Magento, has dramatically improved website speed and user satisfaction with the help of ProperHost's Magento optimized hosting.

We feel confident that ProperHost and LiteMage Cache provides the performance and scalability IzyShoes needs now and in the future.Georgios Kontodimos
CEO, IzyShoes

How did you get started with Magento?

IzyShoes were originally a physical store only. When we wanted to establish an online presence we initially started out with the Magento Go (ed.: a hosted solution that no longer exists), but very quickly we decided to change to Magento Community Edition (CE). Magento CE offered the necessary flexibility and robustness that Magent Go were lacking, which were essential in order to accommodate our custom needs and tailored design that fits the IzyShoes brand and image style. In 2013 we launched the first version of izyshoes.gr on Magento CE.

Why did you choose ProperHost?

Before launch we considered several hosting providers, including one general-purpose host and two Magento specialized hosts. After carefully evaluating the different solutions over a period of more than 40 days we finally decided on ProperHost. ProperHost offers a very good ratio of performance/specifications/cost, and also has the ability to expand day by day as our business is growing. We also chose ProperHost for their good reputation in the Magento community, and we have learned to greatly appreciate their outstanding and professional Magento specialized support.

Today, our ability to expand quickly has become an important criteria in our choice of hosting partner. With ProperHost we are able to continuously grow our product catalog and receive a steady increase in traffic without having to worry about our website stalling. As a fashion retailer we are not experts on technology, so it is therefore crucial to have a dependable technology partner that can take care of that side of the business. After more than a year of cooperation we feel confident that ProperHost tick all the boxes.

Always in quest for a faster store

Without doubt, one of the biggest hesitations against Magento has been its questionable performance. As a result of its extensible and modular architecture, Magento is a behemoth that requires a carefully optimized server environment to perform at its best. When we know that nearly half of web users will abandon a site that is not loaded in 3 seconds1 it is no wonder why speed has become such an important consideration.

Izyshoes also struggled with speed. They are a growing business and was continuously battling with slow loading pages and fluctuating response times despite a powerful server all the basic tuning taken care of. In particular one of the problems they were having was due to the page cache extension they were using at the time. A full page cache aims to improve speed by caching frequently accessed pages and reducing the load on the backend and database. Despite that the full page cache did improve overall website responsiveness, the server load increased dramatically during cache crawling/warm-up which resulted in a sluggish site and inconsistent performance, especially during peak hours.

LiteMage Cache to the rescue

IzyShoes had already evaluated three different full page caches. The only reliable solution consumed too much CPU during cache warmup and additionally had a lot of limitations, especially regarding tag-selective flushing and caching of logged-in user sessions.

At this time ProperHost had just finished preliminary testing of the new LiteMage Cache for Magento developed by LiteSpeed Technologies. LiteMage Cache for LiteSpeed Web Server is a powerful full page cache built for Magento stores running on LiteSpeed Web Server w/LSCache. Because it is part of the web server, LiteMage Cache does away with the communication problems and overhead that other page caching solutions suffer from. The LiteMage Cache extension for Magento automatically integrates Magento installations with LiteSpeed's top-of-the-line ESI implementation, combining the greatest Magento performance enhancement possible with a painless set up.

We have been using LiteSpeed's enterprise web server for a long time, so when IzyShoes reached out to us for help on how to solve their performance problems, we quickly decided to implement LiteMage Cache on their store.

Not only did it improve performance significantly, but the overall CPU and memory usage was also reduced, allowing IzyShoes to serve more visitors without compromising on response time or having to spend more on expensive hardware. In addition, features such as selective tag flushing, built-in cache warmup, private session caching, and user defined cache rules were available right out of the box making it one the fastest, most feature-rich and easy to configure full page cache for Magento.

LiteMage Cache makes use of Edge Side Includes (ESI) to "punch holes" in dynamically created pages, allowing the whole page to be cached while injecting only blocks of information that change between users, such as shopping cart content or user session information. This results in a drastic speed increase as the majority of pages can be retrieve quickly from cache without having to go to the database.

The solution and results

Before we installed LiteMage Cache on the IzyShoes website, the average web page response time was 2-3 seconds which by normal standards is not bad, and actually faster than most Magento websites out there. IzyShoes were already taking advantage of the comprehensive optimizations and performance tweaks implemented by ProperHost at the server level. However, during busy hours or when executing time consuming backend tasks such as re-indexing or warming the cache, response times would increase exponentially and could sometimes go as high as 10+ seconds, which obviously causes a really bad user experience.

The graph below shows the typical response time before implementing LiteMage:

It highlights server time spent in PHP vs MySQL while processing each web request. As becomes clear from the graph, a portion of the wait time is caused by the fact that the server has to query the database on every request/page load.

The following graph shows the response time after implementing LiteMage:

The response time immediately dropped to below 1 second! In fact, the majority of the requests now completes in less than 500 milliseconds. Since most pages now can be loaded without having to go to the database, the website speed is no longer affected by a sudden increase in traffic or slow backend tasks that previously caused load issues. We have also noticed a significant drop in CPU utilization as a result of more requests being served from the cache, improving overall server health and resource usage.

Benchmark results

Below are the raw benchmark results obtained with the Siege http load testing and benchmarking utility before and after implementing LiteMage Cache.

Before LiteMage

  • Avg. response time per transaction: 1.85s
  • Shortest transaction: 0.68s
  • Longest transaction: 5.95s

After LiteMage

  • Avg. response time per transaction: 0.12s
  • Shortest transaction: 0.06s
  • Longest transaction: 5.26s

In other words; after implementing LiteMage Cache the average response time was reduced by 93.5%! On average, each transaction (page request) completed over 15 times faster than previously. That is a pretty impressive result! The longest transaction saw just a small improvement, which was probably due to hitting a page that could not be cached and therefore it did not benefit from LiteMage.

Test conditions

The speed test was ran for 15 seconds with 20 concurrent users using Siege - a HTTP load testing and benchmarking utility. The tool simulates real visitors to a random selection of website urls. Each test was repeated 3 times and the average results were calculated. The test only measures the time to first byte (TTFB), i.e. the total time spent in server-side processing (PHP, MySQL) until the first byte of the page is received by the client's browser. Network latency, transfer rate and browser rendering time was left out of the equation for more predictable results. LiteMage Cache Warmer was activated prior to running the test to ensure that the cache was fully populated.

About this case study

This case study was conducted by ProperHost in collaboration with IzyShoes (www.izyshoes.gr) over the course of three weeks in 2015. Invaluable support and contribution were also given by LiteSpeed Technologies during the process.

Do you have a similar story you would like to share? We would love to hear from you! Contact us today with some more information about your business.

<