When Magento was first released, it provided customers with a personalized eCommerce experience. It still does this excellently. Yet as Magento stores have grown and their requirements have changed, this personalized experience now needs to be delivered to an increasingly large customer base, and in an increasingly efficient way. Magento 2 performance optimization helps store owners to do just this.
You’ve probably heard the statistic that “a 1-second delay in page response can result in a 7% reduction in conversions.” It might be an overused statistic, but it’s true. A single second can be the difference between a Magento store that drives as much traffic and generates as much profit as possible, and one that falls flat. “Magento is capable of supporting eCommerce stores of any size, but making the most of that power requires careful optimization.“
Since its first release, Nexcess has constantly worked to increase performance and optimize Magento environments; not just for us but for everyone. Our first guide, released in 2013, helped developers to create incredible, high-performance Magento stores. Stores which beat out the competition when it came to speed, efficiency, and responsiveness.
Our newest guide brings things into 2018 (and beyond), with everything from PHP optimizations, MySQL recommendations, and notes on how to implement Varnish and full-page caching effectively. Moreover, we’ve included all of this in a convenient 68-page book available for any Magento 2 developer who wants to know how to optimize a Magento 2 site.
What Has Changed With Magento 2?
From a technical perspective, stock Magento 2 has implemented performance gains over its predecessor; especially with regards to PHP utilization. Changes in how the application handles PHP threads has led to a noticeable difference. That users were unable to import themes from their Magento 1 stores was a sacrifice they were willing to make; especially when it came to the implementation of built-in full-page caching.
To date, almost 4,000 online stores have been built using Magento 2. While the second version of the application originally brought the eCommerce platform in line with the increasing demands of a modern online marketplace, these demands continued to grow. Further performance optimizations have become essential to ensuring that eCommerce businesses are now able to keep pace with their competitors.
How Can I Optimize My Magento Store?
For a full list of Magento 2 optimizations, we highly recommend downloading The Definitive Guide to Optimizing Magento 2. We will cover only a select few of the main optimizations here.
PHP Optimizations for Magento 2
We’ve discovered several PHP optimizations for Magento 2. These are specifically designed around increasing performance and load times for users.
Our definitive guide also features recommendations regarding which PHP version you utilize and how to tailor it. While the Nexcess Cloud supports PHP 5.6 – 7.2, we highly recommend PHP 7.0 or later as these can dramatically reduce memory usage.
Some of the PHP optimizations you’ll find in The Definitive Guide to Optimizing Magento 2 include:
- A PHP runtime limitation of 600 seconds.
- A script memory utilization limitation of 768MB
- A POST data size limitation of 512MB
MySQL Optimizations for Magento 2
For Magento 2 database optimization, we recommend implementing and optimizing MariaDB as a replacement in the MySQL section of your stack. Stock MariaDB is fast and offers a simplified deployment over CentOS 7.
Some of the MariaDB optimizations we’ve implemented include:
- Single server environments to incorporate a 50% buffer size pool. For systems dedicated to MariaDB this should be increased up to 80%.
- Set query cache size to 2% of your available memory, or 127MB.
Nexcess Cloud as Changing the Magento Environment
One of the biggest changes the Nexcess Cloud has brought to Magento 2 stores is the inclusion of Nexcess Cloud Auto Scaling. Auto Scaling is a feature which allows for your cloud account to scale the number of concurrent users automatically, whenever your Magento store picks up traffic spikes.
For instance, if you run a sales event which results in your store receiving double the number of guests it normally does, Nexcess Cloud Auto Scaling will allow your store’s concurrent user capacity to increase. This means no rejected page loads and no loss of potential income.
Varnish Implementation for Magento 2
Varnish is a reverse proxy cache which allows for the delivery of store content directly from memory. This is normally an incredibly complex process with Magento due to the personalized nature of the content it delivers. With the Nexcess Cloud, Varnish can be enabled to increase user concurrency (without Auto Scaling) and lower load times. This is a huge contributor to Magento 2 performance optimization.
We recommend using Nginx and Haproxy in order to implement Varnish.
Posted in: Magento, Nexcess