May 17, 2018
Magento announced its Commerce Cloud offering almost two years ago at Imagine 2016. Since then, almost 500 Magento Commerce customers have signed up to launch on Magento’s Cloud and more than 150 stores have gone live already (Read some of their customer stories). We’ve seen tremendous adoption in our Cloud service and today more than 50% of new customers are choosing to deploy on Magento’s Cloud instead of deploying on third-party infrastructure providers.
Throughout all that growth, our product and engineering teams have been listening intently to the feedback from our customers and then working tirelessly to improve it, in addition to rolling out some seriously awesome updates to the solution.
Today, we want to highlight ten of the most significant changes we’ve made recently. To be certain that you’re getting the full benefit of these great updates you must make sure you upgrade to the latest ece-tools package (see item #1).
1. New Ece-Tools Package to Manage & Deploy Stores
We’ve launched an ece-tools package to deliver a truly mature and scalable deployment tool that can scale with our customers’ needs. In February 2018, we deprecated magento-cloud-configuration and ece-patches packages and provided a path for prior Magento versions to run with the ece-tools package. Consolidating to a single package across all versions allows merchants an easier path for upgrading their instance and lets Magento focus on releasing updates more rapidly and with higher quality.
All customers should upgrade to ece-tools as soon as possible to benefit from the latest features released by the Magento Cloud team—both those listed in this post and future updates that are released every few week
Upgrade instructions for 2.2.x are here
2. Seamless Production Deployment & Configuration Workflow
When we first launched Cloud, developers had to use three completely separate git repos to manage their integration, staging, and production environments and the staging/production environments weren’t available through the Cloud UI or CLI. This meant that after developing in the integration environments, developers had to push to a separate production repo, which created friction in the deployment process. In addition, several configuration and management options for the staging/production environments required manual work from the Magento support team.
Last October, we launched two significant improvements to the developer experience:
Introduced staging/production git repos through the Cloud UI and unified all environments into a single Git tree, simplifying the code merging and deployment process
Enabled self-serve configuration and management of staging/production environments, so developers can directly:
Add / remove user to staging/production
Add / remove variable to staging/production
Add post_deploy phase support & cache warming
Manage build / deploy hooks & PHP version via .magento.app.yaml
Full details can be found here.
3. Increased Speed of Production Deployments
In Q4 2017, we launched two options in how we handle Static Content Deployment (SCD), which reduces the maintenance window dramatically:
The first way to increase the speed of production deployments is to move SCD to the build phase of the deployment and to enable improved minification which is run on the fly as opposed to keeping it as a dependency on the deployment which is the default. Read more about SCD and read more about minification.
Disable full static content deployment and run it on demand whenever the page is requested.
First, move SCD to on demand mode
Then, enable post_deploy hook
Finally, enable cache warm up (homepage is warmed up by default)
With these improvements, customers have significantly increased their production deployment speed and we highly recommend all customers to give these features a spin.
As always, please remember to test them out on your staging environments before you push to production!
4. Simplified Build/Deploy Process Management
When we launched Cloud, developers needed to add some project level variables using the web UI to manage the build/deploy process.
In January 2018, we introduced the .magento.env.yaml file which stores all configurations for the build/deploy process. Developers can now configure any phase of the deployment process:
These changes help streamline configuration for developers and make variable changes instantaneous. This new configuration process is also backward compatible with all previous configuration settings.
5. Performance Boost
We recently launched a new feature that allows Pro customers to use the capacity of all three nodes available on Pro production environments for MariaDB and Redis. With this feature enabled, all operations will write to single (master) node, while read operations (traffic) will be balanced between the 3 nodes. This feature provides a significant performance boost when enabled.
Find more information around how to upgrade:
6. Local Development Template To Ease Cloud Deployments
When we launched Cloud, developers had to set up and figure out their local development environment (on their PC) on their own. In February 2018, we launched a clean and light-weight magento-cloud template that ensures that local build commands won’t affect the code that will eventually be pushed to a remote (i.e. Cloud) environment.
7. 100% Increase in Available Memory
Magento uses Amazon Web Services (AWS) as the underlying Infrastructure as a Service to power Magento Cloud. When we launched the Cloud offering, we were primarily using the “C3” family of servers for the Production environments associated with Pro customers. In Q1 of 2018, Magento started implementing the AWS M4 family of servers for new customers and begun migrating all existing customers to the same M4 family of servers—at no cost to the merchant and with no merchant downtime impact.
The M4 servers provide more than a 100 percent increase in available memory. This will have an immediate and significant positive impact on performance. Over the course of the next few months, Magento is migrating all customers with appropriate advanced notification to ensure there’s no service interruption.
If you’re interested in migrating your project’s underlying servers in advance of the scheduled migration, please contact support.
The second phase of moving to the M4 family, starting in late May 2018, is the re-configuration and tuning of internal features like REDIS Cache, MySQL buffers and query cache, and ElasticSearch, among others, providing additional performance improvements.
8. Enhanced security through Fastly Web Application Firewall
Magento Commerce (Cloud) relies on a shared responsibility security model. In this model, different parties have different areas of responsibility for maintaining the security of the system. This shared responsibility approach allows for both flexibility and use of best-of-breed cloud technologies. Customers have the complete ability to customize the Magento application as in any deployment model. At the same time, managed services are provided by Magento as part of the offering. The offering is built on top of Amazon’s industry-leading cloud services. This approach is intended to provide the greatest flexibility for customization and innovation while reducing the operational responsibilities of the merchant.
As part of Magento’s security responsibilities, we’ve recently begun the rollout of a Web Application Firewall (WAF), powered by Fastly. WAFs prevent malicious traffic from entering the site/network. The WAF Magento deploys will provide protection against OWASP Top 10 and will depend on a templated ruleset based on test traffic to cloud sites which will be rolled out to all customers. WAF rules will then be adjusted on an ongoing basis per changes in the security environment.
Typically, merchants need to source, implement, and pay for their own WAF to protect against malicious traffic. We’ve been in listening/learning mode for the last quarter and are rolling it out to all customers over Q2 and Q3 as a standard part of the cloud infrastructure.
9. Page Speed Improvements (20%+) Through Fastly Image Optimization
Magento Commerce (Cloud) is adding another powerful feature for all existing and new customers for free—Image Optimization, powered by Fastly. Great eCommerce sites rely on high-quality images that help end-users browse and buy the products they need. However, these rich images are typically a large part of the performance slowdown sites see on their frontend.
With Fastly Image Optimization (IO), merchants will see significant performance improvements. We’ve seen 20 to 30 percentage point increases in sites’ Google Page Speed Scores and 60-90 percent reduction in image weight at no additional cost. Built on Fastly’s CDN, Fastly Image Optimizer allows our customers to transform and serve images at the edge, closer to their users, without impacting the origin server.
We’ll be rolling out IO to all existing and new customers over Q2 and Q3 as a standard feature of the Magento Commerce Cloud. Merchants and partners should expect a support ticket notification in June with more instructions on how to leverage Image Optimization.
10. Keeping Up with PCI Compliance
Protocols for establishing a secure website connection older than Transport Layer Security (TLS) 1.2 no longer meet minimum security standards due to security vulnerabilities. To ensure your store’s security and to maintain PCI compliance, Magento Commerce Cloud began restricting connections to only TLS 1.2 or higher and no longer accepts inbound connections from visitors using earlier versions of TLS and SSL as of April 30th.
Learn more about this change and find additional resources in this blog post.
Have Questions About Any Of These Features?
Join the conversation with the Magento Cloud team and our community on the #cloud channel of the Magento Community Engineering Slack. If you don’t have access, you can sign up here.