You appear to be offline. Some site functionality may not work.
Sign Up

Fastly Blog

Introducing Fastly’s Magento 1 Extension

In our ongoing commitment to make Fastly easy to use, we are enabling an increasing number of Magento merchants to manage our service from within existing environments and workflows. With that, we’d like to announce the release of our Magento 1 extension that will help merchants seamlessly speed up their customers’ online shopping experience, while minimizing their infrastructure costs. We designed this extension with input from the Magento community, and we’re proud to offer this integration to Magento 1 merchants.

Magento merchants, like all ecommerce companies, face the challenge of managing both site performance and ensuring a great online experience for shoppers. Online shoppers expect pages to load quickly (over 51% of users want a faster shopping experience). So how do you ensure your customers are getting great experiences online?

In previous blog posts, we’ve discussed the ways in which a content delivery network (CDN) can ensure better site performance for ecommerce while tailoring your content to online shoppers. Web performance is only part of it, however — you still have to deliver accurate inventory, catalog, and pricing data across a multi-channel strategy.

With that in mind we designed the extension to speed up the online shopping experience while giving admins the ability to manage settings from inside the Magento admin panel. This extension combines the power of Fastly’s real-time Varnish CDN and Magento’s all-in-one ecommerce platform, allowing you to ensure great performance and continuous security while managing your store.

Magento is the world’s leading ecommerce platform. About 30% of the Alexa top ecommerce sites are running on the free Magento Community or the commercial Enterprise Edition. Scaling global ecommerce sites with fast performance is more than just caching static objects on a CDN. It’s about accelerating every aspect of the experience for an online retailer’s customers.

Fastly’s real-time CDN brings scalability, security, and resilience of our global network to the Magento platform. We’re built on top of Varnish (the leading open-source HTTP Accelerator) and the native caching layer for Magento 1 and 2. The Extension optimizes the Magento platform by decreasing page load time, executing logic at the edge, and delivering an “always on” storefront — even during high-traffic events or DDoS attacks. Furthermore, our Origin Shield ensures that your storefront remains fast when traffic spikes by designating a specific Fastly POP to serve as a “shield” for flash traffic, especially when you update content. You’ll be able to accommodate more shoppers with a lower infrastructure spend.

magento blog diagram v2

You can install Fastly’s Magento Extension in less than 30 minutes and manage key Fastly features directly from your Magento control panel. These features include:

  • Dynamic content acceleration with ESI
  • Integrated Instant Purge
  • Automatic configuration of key Fastly features, including Origin Shield, geoIP / location detection, Soft Purge, and more

Dynamic content solved with ESI

An ecommerce site’s content is predominantly static, containing simple images or text blocks that describe available products. A CDN lets you cache the majority of your site, allowing users to access content instantly. Once a page is generated, it can be delivered to thousands of visitors without their requests returning to origin. However, some objects on your site are highly personalized, and therefore cannot be cached. These dynamic components include the shopping cart, login message, and personalized blocks to show “last viewed products” or recommendations — all of which are core to the conversion of views to actual transactions and making performance even more important on these dynamic elements.

bjornscreen1

Traditionally, the presence of uncacheable objects on a page would make the entire page uncacheable. However, with Fastly’s Edge Side Includes (ESI) feature, you can cache pages with dynamic content. Using ESI, you can replace dynamic elements on a page with ESI blocks to make that page cacheable, allowing you to inject visitor-specific HTML before sending out the full page.

Even though ESI lets you cache a page that would otherwise be uncacheable, requests for that dynamic content still have to go to the origin, resulting in less-than-optimal performance. Fastly’s Magento Extension addresses this concern by making the ESI blocks themselves cacheable with the help of cookies. The cookies are defining a “state” for the ESI blocks and become a part of the hash Fastly creates for the ESI object. This way Fastly only needs to retrieve a new version for an ESI block when content is updated and can reuse it on subsequent requests. The net result is that the shopping experience for customers stays fast and responsive with dynamic objects being cached and delivered from Fastly’s global network.

Instant updates

Fastly distributes your ecommerce site to your global user base using strategically placed points of presence (POPs). One of the most significant concerns in a globally distributed environment is the accuracy of the content in each remote cache. For example, what if a product runs out of stock or an incorrect price needs to be updated ASAP?

Magento + Fastly can help: Fastly’s Magento Extension observes every product change in the system and triggers a purge request via Fastly’s API. With the help of surrogate keys, Fastly will identify the affected cache objects, invalidate them within 150 milliseconds, and retrieve a fresh version of the pages with the next user request, instantly updating the content globally.

Moreover, Fastly’s Soft Purge can be used to deliver stale content for a set amount of time until Fastly fetches a new version from Magento in the background. This means shoppers on your site will not see errors while content is being updated.

Ecommerce platform and cache management in one place

Once you’ve set up Fastly, the Magento backend becomes your control center for content delivery. Fastly’s Magento Extension allows granular adjustments of cache settings, such as TTL per request route, disabling of caching for certain pages or store views, and debug options to help uncover possible issues.

bjoernscreen2

Beside automatic purges on product updates, our integrated cache management lets you purge static content. When an editor on your site uploads a new image for a product or a developer changes the CSS, a purge request can be triggered via API call without needing to log in to your Fastly account.

bjoernscreen3

Ready to use

Fastly’s Magento Extension is focused on solving the core challenges of ecommerce sites — accelerating dynamic content, complete and instant control of your global caching, and shielding your Magento platform from traffic spikes. Integrated with Fastly’s Varnish Configuration Language (VCL), the Magento Extension allows you to easily configure Fastly features like Origin Shield, GeoIP, and Stale-If-Error. Once you sign up for Fastly, you can have Magento up and running within a couple of minutes. The performance and security gains for your ecommerce site will be immediate.

The Extension is available as open source on GitHub, and we’d love for you to try it out with your Fastly account.

We look forward to your feedback — please feel free to contact us with any questions or concerns.

Author

Björn Kraus | CTO & Co-founder, Phoenix Media

Björn is CTO and co-founder of the Magento Gold Solution Partner PHOENIX MEDIA, Germany. He has used Varnish with Magento since 2011 and is a strong advocate for ESI.

Emily Friedberg | Director of Ecommerce Focused Partnerships and Strategy

Emily Friedberg is Fastly’s Director of Ecommerce Focused Partnerships and Strategy. Emily manages relationships with key partners in the cloud, ecommerce, and SI/agency world. Interested in a partnership? Contact Emily at efriedberg@fastly.com

ftwcloud