Magento 2 was released to merchants almost a year ago, and is a complete platform overhaul from Magento 1.x versions, rather than an update. There are several core differences between Magento 1.x and Magento 2 that are important for businesses and Magento developers and businesses to understand.
Key Magento 2 Improvements#
-
Codebase: This has been totally refactored with a focus on better performance. The codebase also has significant unit testing coverage which allows code changes to be validated by automated tests as part of the build / release cycle. This improves code quality on an ongoing basis.
-
Database Architecture: Magento has retained the EAV model present in Magento 1 however there have been some optimizations, such as the ability to have 3 separate master databases in Enterprise edition: Checkout, orders, and product data can all each use a separate master database.
-
Extension quality: The world of extensions in Magento 1 was an area fraught with danger. For Magento 2 there are many poorly built extensions that work at low traffic volumes or with a small numbers of product items but then have significant performance issues once traffic or product counts rise. The Magento 2 strategy has been to throw away all existing extensions and define a new process to build and submit a Magento 2 extension that involves rigorous code quality checks before an extension is allowed to be offered in the Magento marketplace.
-
Application design for caching: Magento 2 is designed to work out of the box with Varnish Cache, a lighting fast HTTP acceleration tool. Content cached and served from Varnish Cache is the fastest you can send, and Magento 2 makes it easier to implement Varnish Cache on your website either locally or through a Content Delivery Network.
Setting up Varnish Cache with Magento 2#
There are several areas to consider when setting up Varnish Cache with Magento 2. They include:
-
Varnish Cache Versions: As of October 2016, Varnish Cache has recently released Version 5. With Magento 2.x, you will want to run Version 4 or newer.
-
Installing locally or on distributed servers: Varnish Cache can be set up on a dedicated server in your hosting infrastructure or through a Content Delivery Network that installs Varnish Cache on globally distributed servers that are closer to your end-users.
-
What content to cache: The goal of optimizing your website with Varnish Cache is to have Varnish Cache serve as much of your website directly from Varnish Cache as possible. This includes images, static files (CSS, JavaScript, etc.) and the actual HTML page itself. This is known as Full Page Caching.
When configured correctly, Varnish Cache and Magento 2 work well together and allow you to cache large portions of your website and HTML documents, resulting in a huge performance improvement for Magento websites. However, there are several tricky elements which need to be managed to ensure you are getting the most out of your Varnish Cache setup, including managing cookies in Magento, recognizing partially dynamic pages, and isolating dynamic components on a page.
To learn more about setting up Varnish Cache with Magento including recommendations on hosting configurations, Content Delivery Networks, and how to configure Varnish Cache so that it serves as much of your Magento 2 HTML as possible, download our eBook today or contact us to speak with one of our Magento and Varnish Cache experts.