How to Maximize Performance During Magento 1 to Magento 2 Migration

magento-1-to-magento-2-migration-check-list.jpg
Table of Content

What Businesses Should Know Before the Migration

Migration from Magento 1 to Magento 2 can be an all-around challenge for the business. And while the two versions are very different in how they are built and what they can do, bear in mind that you can customize both Magento 1 and Magento 2 to your particular needs.One of the challenges of the migration is the spike in resource needs. Magento 2 can be several times hungrier for your server resources than M1. While your real system requirements will heavily depend on your usage pattern, we can at least shape your expectations a bit.

Take a look at the specs. PHP M1 – 512 MB. PHP M2 – 2 GB. An x4 growth!It doesn't have to be this big, of course. But depending on the functionality (installed extensions and customizations, traffic and store layout, the number of SKUs and product structure) expect the load to rise by at least 30-40%.

So a store that used to work on several servers could migrate to a 3-server setup where for Magento 1 you could do just fine with a simpler hardware solution.

Magento 1 vs 2 Performance: What to Expect

Magento 2 is a platform that was a direct descendant of Magento 1. The development team behind Magento 2 made the decision to build the next version based on the same functionality, only with more advanced design features, scalable architecture, and modern technologies.

Magento 2 is more focused on performance and scalability than Magento 1 which means it’s more suitable for higher loads featuring better indexing, built-in support of popular caching solutions, various improvements in database and code functionality, faster checkout, and an emphasis on mobile experience.

Learn the Key Differences Between Magento 1 and Magento 2

One of the distinct differences that shape Magento 1 vs 2 performance are system requirements. These are important because technology defines the breadth of solutions of what you can do to your store.

Magento 1 starts to show its age. It was first released in 2007 which means it’s already 10 years old. In spite of its venerable status, Magento 1.9.x still goes strong and the development team promises to support M1 with quality and security updates until mid-2020.

But the eventual halt of development means Magento 1 will not support new server technology and remain kind of stuck in the last supported versions.While this is not a decisive factor it’s something you should keep in mind. 

TechnologyMagento 1.9.xMagento 2.3.x
Web serverApache 2.xApache 2.2 or 2.4+
Nginx 1.7.xNginx 1.x
PHP version5.4, 5.5 and 5.6, later versions patched to PHP 77.1.3+ and 7.2.x
DatabaseMySQL 5.6 (Oracle or Percona)MySQL 5.6 and 5.7 (also compatible with MySQL NDB Cluster 7.4.*, MariaDB 10.0, 10.1, 10.2, Percona 5.7, etc.)
Cache managementRedisMemcachedVarnish version 4.x or 5.2Redis 3.2 (compatible with 2.4+)Memcached
SearchApache Solr (M1 EE only)Solr 4.x ( with M2.1)Elasticsearch 5.2.x and 2.x

From the get-go, you can notice a few brand new technologies that Magento 1 doesn’t have. The most important here is Varnish.

Don’t get us wrong. Varnish is still available for Magento 1 but it’s only supported through a third-party module while Magento 2 supports Varnish natively from the standard configuration menu.

Magento 2 is better optimized to use Varnish as a caching solution. Tight integration with Magento 2 offers developers a simpler approach to turning Varnish on. Using Varnish for Magento 1 is more cumbersome and involves a more convoluted installation process.

Improperly installed Varnish introduces new stability risks to the system which means Magento 2 is a winner here since M2 installation is way easier.

Solve Perceived Performance Slowdown in Magento 2

magento 2 slow issues

M2 performs better than M1 because of access to Varnish, Redis and even the default full-page cache.

But despite all this, some long-time Magento users still complain that Magento 2 feels sluggish compared to Magento 1. While this is not actually true, it shows why perceived performance is important for user experience.

Depending on the configuration, a Magento 2 site can be x2-3 times faster than a similar Magento 1 store.The issue is Magento 2 loves its frontend dynamic AJAX code. And AJAX will display spinning wheels anywhere on the page where the content is not yet ready for display. This constant spinning can give users the impression that the site has slowed to a crawl when in fact it's ready for interaction.

magento 2 slow spinning wheel

A quick workaround would be to change how Magento 2 shows your customers what it's doing. Instead of using an out of the box busy wheel for every operation, Magento 2 can just pop in new content into the page once it's ready.

A good addition to this content load approach could be the introduction of a lazyloading pattern. Lazyloading uses placeholders or blurred pictures instead of real images to improve user experience.

Add Varnish to Magento 2 to Improve Response Times

add varnish to magento 2 to improve response times

In stark contrast to Magento 1, Varnish installation for Magento 2 is relatively easy. Varnish as a solution is well integrated into Magento 2 and even gets a recommendation from the Magento development team.

We also recommend that you use Varnish instead of Magento full-page cache that’s set as the default solution.

Compared to Magento 1 Varnish setup, all you need to do is make sure Varnish is installed on your server, then go to your Magento Admin panel and switch to Varnish cache.

Even though Varnish for Magento 2 is way easier to set up, you still need to be careful:Take into consideration cacheable=false blocks which will hurt your web store if configured incorrectlyMake sure content with undefined TTL is taken care of as well.

You can turn Varnish on at Stores > Configuration > Advanced > System > Full Page Cache.

caching application add varnish magento 2

Install Elasticsearch to Boost Search Performance

Elasticsearch is an extremely useful search acceleration tool that has only grown in popularity since M1 release. For Magento 2, you no longer need to purchase a separate extension for it.

Magento 2 supports Elasticsearch natively while for Magento 1 you’ll have to buy a third-party extension to use it.

Native support has 3 main advantages:

  • Native Elasticsearch is obviously free – which is nice
  • Native support means Elasticsearch will update with Magento, no need to worry that something breaks along the way
  • You enjoy enhanced stability with fewer compatibility issues with core Magento

All you need to do is install Elasticsearch, then go to Stores > Configuration > Catalog > Catalog > Catalog Search and turn it on.

install elasticsearch magento 2

Elasticsearch is an integral part of Magento 2. Learn how you can install and configure it on the .

Leverage the Advantage of Native Support and New Server Tech

Magento 2 works much faster with PHP 7 because Magento supports it natively. Magento 1 also got PHP 7 support in version 1.9.3 but it was as an upgrade from the initial PHP 5.x. So for Magento 1, you’ll need to install later version patches to offer the same functionality that Magento 2 already has out of the box.

When we compare MySQL 5.6 vs MySQL 5.7, it’s preferable for Magento 2 store owners to make the leap to a newer MySQL. Version 5.7.x gives Magento 2 all the benefits of the gradual performance advantages of the new optimizer.

Magento 1 is either locked behind the aging MySQL 5.6.x – or needs a thorough migration process with potential troubleshooting along the way.

In Summary

Migrating from Magento 1 to Magento 2, you gain improved scalability and add features for more streamlined B2B sales processes and longer selling cycles.

With Magento 2 you also have the latest PHP security improvements, a well-thought-out database structure, and a string of smaller optimizations across countless other areas.

An inquisitive reader could notice that most things we have been talking about so far are as applicable for Magento 2 as for Magento 1 in terms of Magento 1 vs 2 performance.

To a point, they are right. Both Magento 1 and Magento 2 are flexible systems that allow for a wide range of customizations.

Most of the time the difference is in the ease of implementation and accessibility. Magento 2 allows you to get the most out of your store.

If you want to boost your Magento 2 further, we recommend you take a look at our .

And if you need any custom help with your Magento 1 or Magento 2 store - !

Let’s stay in touch

Subscribe to our newsletter to receive the latest news and updates.