delivering high-performance ecommerce with magento blackfire magento commerce cloud integration...
Post on 30-May-2020
Embed Size (px)
Delivering High-Performance Ecommerce with Magento
Source Mash | WHO WE ARE
Magento Certified Developers
Projects and Team
The BBC found they lost an additional 10% of users for every additional second their site took to load.
Pinterest increased search engine traffic and sign-ups by 15% when they reduced perceived wait times by 40%.
DoubleClick by Google found 53% of mobile site visits were abandoned if a page took longer than 3 seconds to load
For Mobify, every 100ms decrease in homepage load speed worked out to a 1.11% increase in session-based conversion.
Why care about
• Featured tools provided by Magento Commerce Cloud to facilitate Performance Driven Development.
• Performance monitoring and analysis with New Relic.
• Analyzing issues and bottlenecks with the help of Blackfire.
• Delivering performance-driven development with Blackfire.
Platform as a Service
Multi-tenant Saas artchitecture
APM New Relic
SERVERS New Relic
PLUGINS BROWSER New Relic
SYNTHETICS New Relic
MOBILE New Relic
ALERTS DASHBOARDS API EXCHANGE
PLATFORM SOFTWARE ANALYTICS New Relic.
Performance monitoring and analysis with New Relic
New Relic is an enterprise grade software performance monitoring and analytics platform. It is seamlessly integrated and readily available with Magento Commerce Cloud.
It consists of products which enable us to monitor and analyse the frontend, backend of the application and also helps us monitor and generate alerts for server infrastructure.
SERVERSAPM MOBILE BROWSER SYNTHETICS PLATFORM INSIGHTS
New Relic Cloud Database
}New Relic New Relic New Relic New Relic New Relic New Relic New Relic
New Relic is seamlessly integrated with Magento Commerce Cloud. It comes preconfigured for staging and production environments for pro package and can be effortlessly enabled for starter package by enabling it in magento.yaml and activating it through magento-cloud cli.
runtime: extensions: - newrelic
magento-cloud variable:set php:newrelic.license
+------------------------------+---------------------+--------------------------------+ | Name | Level | Value | +------------------------------+---------------------+--------------------------------+ | php:newrelic.license | environment | | +------------------------------+---------------------+--------------------------------+
New Relic Integration with Commerce Cloud
Along with easy setup and activation, Magento commerce cloud also provides a set of New Relic alert policies based on industry best practices, these policies set thresholds for warning and critical conditions that affect store’s performance. Following are key performance metrics which are monitored:
•Apdex score •Error rate •Disk space (available on Pro Production environments only)
These policies can be reviewed from Alerts > Alert Policies from your New Relic Account.
New Relic Integration with Commerce Cloud
New Relic APM gets valuable insight into your store’s health. Aggregated real-time web transaction times and historical data makes it easy to monitor how your website performs, allowing you to take actions quickly if a problem arise. Some of the key metrics you can monitor with New Relic APM are as follows;
Slow Transactions Traces
Slow MySQL Calls Stack Trace
External Services Time Along with Caller
MySQL Queries Time Consumption
New Relic APM
New Relic Browser New Relic Browser provides deep visibility and insight into how your users are interacting with your store. New Relic Browser measures page load timing, also known as real user monitoring (RUM).Some of the key metrics you can monitor with New Relic Browser are as follows;
Page Load Timing Comparative Apdex Acores for
Browsers and App Servers Throughput by Browser Type
Top Browsers by Throughput
Top Webpages viewed (with URL-Based Metrics)
Timing and Throughput Details
Average Page load Time by Platform Type (mobile, desktop, and other)
Selected Browser type by Version (for example, Chrome 31, 32, 33, etc.)
Color-Coded Apdex Scores and other Data Show Your End Users’ Experience Around the World or in a Specific Region or State.
Page Views Metrics
Blackfire Blackfire is a PHP profiler and automated performance testing tool that can be used in the development, Integration, Staging, and Production environments. It instruments PHP applications to gather data about consumed server resources and provides targeted granular performance analytics. Following are few features of blackfire ;
•It gathers profiling data on Time, CPU, I/O Wait, Memory, Network calls, HTTP Requests and SQL Requests.
•Profiling is done on demand. The only request showing overhead is the one being profiled, only for the profiling session. No other session or request is impacted. You can safely use Blackfire on production servers.
•Profiling can be requested either via our CLI utility, or with an intuitive Companion Extension.
•It provides call graphs ordered by wall time and several other metrics which helps us identify bottlenecks effortlessly.
•Compare two different profiles to measure which metric has improved by what amount.
•Write performance test cases and scenarios and integration with deployment cycles.
How Blackfire works?
1/ Sign Request
2/ Signed Request
4/ Check Signature
7/ Send Profile
3/ Create Profile
9/ Continue or Stop
8/ Continue or Stop
6/ Response 5/ Request
10/ Upload aggregated
Blackfire Magento Commerce Cloud Integration
Magento Commerce Cloud provides seamless integration with Blackfire to enable easy setup and automating performance tests with each deployment. Blackfire can be enabled by setting up it for an environment using magento-cloud cli and enabling it in magento.yaml configuration file.
runtime: extensions: - blackfire
Blackfire Magento Commerce Cloud Integration After completing the integration, Blackfire runs performance tests automatically each time you push code to an active branch, merge a branch, or deploy to Staging or Production environments. This adds no overhead and has no impact on the deployment process. These profiles can be seen in builds section of your Blackfire account
Debug Improve Validate
Monitor – Identify - Understand
Blackfire Companion Extension Once Integration with blackfire is complete, you can start profiling with Blackfire’s companion browser extension available for both Chrome and Firefox .
Blackfire CLI Utility Blackfire also provides CLI utility which lets us profile both HTTP and CLI commands and scripts.
For CLI commands/scripts we use blackfire run command;
For HTTP requests we use blackfire curl command, it supports all cURL options;
Blackfire Call Graph Overview
Blackfire Call Graph
Blackfire Compare Feature
Delivering performance-driven development with Blackfire. Magento Commerce Cloud Integration with Blackfire and its ability to write performance driven tests and scenarios facilitate identifying and fixing bottlenecks during all stages of development lifecycle. Following are some metrics magento specific which can be measured with each deployment;
•metrics.magento2.all.action.catalog_category_view - Action catalog_category_view (category page)
•metrics.magento2.all.action.catalog_product_view - Action catalog_product_view (product page)
•metrics.magento2.all.action.checkout_cart_index - Action checkout_cart_index (cart page)
•metrics.magento2.all.action.cms_index_index - Action cms_index_index (homepage)
•metrics.magento2.all.action.cms_page_view - Action cms_page_view (any CMS page)
•metrics.magento2.all.cache.any.save - Any cache save