SlideShare a Scribd company logo
1 of 36
Download to read offline
© 2018 Magento, Inc. Page | 1
© 2018 Magento, Inc. Page | 2
How would you like your Magento?
In our case it would be slightly different:
• Fast
• Easy to work with
• Extensible & Customizable
• “Free” is still an option
© 2018 Magento, Inc. Page | 3
Performance refers to the speed and effectiveness of a system
under a given workload within a given time frame
© 2018 Magento, Inc. Page | 4
Scalability is the ability of software to handle
an increase in workload by scaling horizontally
© 2018 Magento, Inc. Page | 5
Is Performance === Scalability?
© 2018 Magento, Inc. Page | 6
Reactions when Magento 2.0 released…
© 2018 Magento, Inc. Page | 7
Agenda
• New and Upcoming Features Overview
– Scalability Modules
– Queues
– Bulk API
• Performance Evaluation
– Test data generation
– Server Side Tests
– Client Side Tests
– Profiling
– How we make use of all this?
© 2018 Magento, Inc. Page | 8
Queues support in Magento Open Source
• Migrating from EE to CE in the upcoming 2.3 release
• Includes Amqp support and AsynchronousOperations module
• Already available to explore in 2.3-develop branch on magento2
Github
© 2018 Magento, Inc. Page | 9
Bulk API in Magento Open Source
• Introduced in upcoming 2.3
• Developed by the Community and Contributing Solution Partners
• Allows to perform API request with multiple entities and defer
processing leveraging RabbitMQ
• Partially built on top of queues framework and
AsynchronousOperations migrated to CE
© 2018 Magento, Inc. Page | 10
Parallel indexation
• Available 2.2.5 onwards
• For 2.3 it is planned to make use of queues instead of pcctl_fork
• Available for category product and catalog fulltext indexes
• Price indexer paralleling is scheduled for upcoming releases
• Number of processes is configurable with environment variable
• Indexing is Scoped per store
• May not be applicable for all merchants and use cases
© 2018 Magento, Inc. Page | 11
Indexer batching
• Available 2.2.0 onwards
• Allows to manage and fine tune indexer batch size
• Must be optimized per each individual merchant and catalog, as
may degrade performance otherwise
© 2018 Magento, Inc. Page | 12
Popular search terms caching
• Available in 2.2.5+
• Allow merchant to select number of top search terms to be cached
• Allows merchant to select caching depth
• Enabled by default however number should be fine tuned per store
needs
© 2018 Magento, Inc. Page | 13
Scalability Modules
• Currently available only in Magento Commerce Edition (former EE)
• Allows merchant to configure and use up to 3 master databases
• Checkout and Order Management may have a dedicated database
master each
© 2018 Magento, Inc. Page | 14
Magento Performance Toolkit
© 2018 Magento, Inc. Page | 15
Performance Toolkit
• Evaluate performance and scalability
• Simulate high load and detect bottlenecks
• Extensibility planning (which direction and how?)
• Verify assumptions
• Reproduce ”incorrect” behavior
• Differential testing
– Different Software
– Different Hardware
© 2018 Magento, Inc. Page | 16
Profile Generator
• Implemented with PHP and Magento Framework (/setup/src/Magento/Setup/Fixtures/*Fixture.php)
• XML configuration
<?xml version="1.0"?>
<config xmlns:xi="http://www.w3.org/2001/XInclude">
<profile>
<websites>1</websites> <!-- Number of websites to generate -->
<store_groups>1</store_groups> <!--Number of stores-->
<store_views>1</store_views> <!-- Number of store views -->
<assign_entities_to_all_websites>0</assign_entities_to_all_websites>
<simple_products>800</simple_products> <!-- Simple products count -->
<product-images>
<images-count>100</images-count>
<images-per-product>3</images-per-product>
</product-images>
<categories>30</categories> <!-- Number of categories to generate -->
<categories_nesting_level>3</categories_nesting_level
<customers>200</customers> <!-- Number of customers to generate -->
</profile>
</config>
© 2018 Magento, Inc. Page | 17
Structure of Magento Performance Toolkit
Profile Generator
CLI: bin/magento setup:performance:generate-fixtures
Profiles: /setup/performance-toolkit/profiles/*/*.xml
Scenarios:
Apache JMeter™
/setup/performance-toolkit/benchmark.jmx
© 2018 Magento, Inc. Page | 18
Which entities can be generated?
Bundle Products
Admin Users
Categories
Configurable Products
Product Images
Swatches
Attribute sets
Cart price rules
Catalog Price Rules
Customers
Websites & Stores Views
Tax Rates
Orders Shared Catalog
Negotiable Quotes
Companies
Target Rules
Simple products
© 2018 Magento, Inc. Page | 19
Small Medium Large X-Large
Website/Store Views
1/1 3/3 5/5 5/5
Total Sku 1000 39k 500k 1M
Simple Product 800 24k 300k 600k
Configurable with 24 variations
16/24 640/24 8k/24 16k/24
Attribute Sets 10 100 200 200
Attributes per Set 10 50 50 50
Categories 30 300 3k 6k
Customers 200 2k 5k 10k
Orders 80 50k 100k 150k
Bundled Profiles
© 2018 Magento, Inc. Page | 20
Profile Generator CLI
© 2018 Magento, Inc. Page | 21
What You See
© 2018 Magento, Inc. Page | 22
Is What You Get
© 2018 Magento, Inc. Page | 23
User Behavior Emulation
© 2018 Magento, Inc. Page | 24
Profiling
How hard can it be?
© 2018 Magento, Inc. Page | 25
Popular Tools
Pros:
• Free & Open Source
• Easy to Set Up
• Profile only what you need
Cons:
• XHGUI
• MongoDB
Pros:
• User-Friendly UI
• Multitude of Integrations
• Well documented
• Feature rich
Cons:
• Proprietary
© 2018 Magento, Inc. Page | 26
Tideways + XHGui
© 2018 Magento, Inc. Page | 27
Client Side Tests
With SiteSpeed.io
© 2018 Magento, Inc. Page | 28
SiteSpeed.io
• Sitespeed.io Browser performance evaluation and reporting
• Report generation easy as 1-2-3:
docker run --shm-size=1g --rm -v "$(pwd)":/sitespeed.io
sitespeedio/sitespeed.io
http://your.magento.site/homepage.html
© 2018 Magento, Inc. Page | 29
Sitespeed.io Metrics
© 2018 Magento, Inc. Page | 30
Sitespeed.io – Page Load Details
© 2018 Magento, Inc. Page | 31
How we make use of all this?
© 2018 Magento, Inc. Page | 32
Performance focused CICD jobs
• On each Pull Request
• Nightly
• Monthly
• On-demand
• For every version
© 2018 Magento, Inc. Page | 33
Continuous reporting and trend monitoring
This Pull Request seems to be pretty safe to merge
© 2018 Magento, Inc. Page | 34
Great Day for the Performance Team
© 2018 Magento, Inc. Page | 35
Resources
• https://devdocs.magento.com/guides/v2.2/config-guide/cli/config-cli-
subcommands-perf-data.html
• https://jmeter.apache.org
• https://tideways.io
– https://github.com/kandy/xhgui (fork)
• https://blackfire.io
• https://www.sitespeed.io
© 2018 Magento, Inc. Page | 36
Grazie!

More Related Content

What's hot

Tips and tweaks on migrating to magento!
Tips and tweaks on migrating to magento!Tips and tweaks on migrating to magento!
Tips and tweaks on migrating to magento!MageCloud
 
Accelerating eCommerce Experiences: 2016 Holiday Case Study
Accelerating eCommerce Experiences: 2016 Holiday Case StudyAccelerating eCommerce Experiences: 2016 Holiday Case Study
Accelerating eCommerce Experiences: 2016 Holiday Case Studyrswint
 
SPI Products Innovation
SPI Products InnovationSPI Products Innovation
SPI Products InnovationSPI Conference
 
Monitoring your cache effectiveness in Magento 2
Monitoring your cache effectiveness in Magento 2Monitoring your cache effectiveness in Magento 2
Monitoring your cache effectiveness in Magento 2Tony Brown
 
Magento Meetup Mancheter with PushON: Elena Leonova
Magento Meetup Mancheter with PushON: Elena Leonova Magento Meetup Mancheter with PushON: Elena Leonova
Magento Meetup Mancheter with PushON: Elena Leonova PushON Ltd
 
Site24x7 Website Performance Benchmarks
Site24x7 Website Performance Benchmarks Site24x7 Website Performance Benchmarks
Site24x7 Website Performance Benchmarks Site24x7
 
Monyog v7.04 demonstration & roadmap update
Monyog v7.04 demonstration & roadmap updateMonyog v7.04 demonstration & roadmap update
Monyog v7.04 demonstration & roadmap updateVeer Abheek Singh Manhas
 
TechChat - What’s New in Sumo Logic 4/28/15
TechChat - What’s New in Sumo Logic 4/28/15TechChat - What’s New in Sumo Logic 4/28/15
TechChat - What’s New in Sumo Logic 4/28/15Sumo Logic
 
Alternative to SolarWinds
Alternative to SolarWindsAlternative to SolarWinds
Alternative to SolarWindsSite24x7
 
Monitoring Atlassian Applications
Monitoring Atlassian ApplicationsMonitoring Atlassian Applications
Monitoring Atlassian ApplicationsAndrey Markelov
 
Webinar: The Power of iPaaS in Business Process Automation in the Digital Age
Webinar: The Power of iPaaS in Business Process Automation in the Digital AgeWebinar: The Power of iPaaS in Business Process Automation in the Digital Age
Webinar: The Power of iPaaS in Business Process Automation in the Digital AgeAPPSeCONNECT
 
How to Enable Monetization of Your API Ecosystem
How to Enable Monetization of Your API EcosystemHow to Enable Monetization of Your API Ecosystem
How to Enable Monetization of Your API EcosystemWSO2
 
AS400 IBM iSeries Migration
AS400 IBM iSeries MigrationAS400 IBM iSeries Migration
AS400 IBM iSeries MigrationSrin Soft
 
Bangalore Executive Seminar 2015: Business Transformation Case Study - Tecnotree
Bangalore Executive Seminar 2015: Business Transformation Case Study - TecnotreeBangalore Executive Seminar 2015: Business Transformation Case Study - Tecnotree
Bangalore Executive Seminar 2015: Business Transformation Case Study - TecnotreeMongoDB
 
ILAP 1.0 SP 04 Release Information
ILAP 1.0 SP 04 Release InformationILAP 1.0 SP 04 Release Information
ILAP 1.0 SP 04 Release InformationThorsten Klingspor
 
Case Study for Microsoft ERP for Retailers Magento Ecommerce Platform
Case Study for Microsoft ERP for Retailers Magento Ecommerce PlatformCase Study for Microsoft ERP for Retailers Magento Ecommerce Platform
Case Study for Microsoft ERP for Retailers Magento Ecommerce PlatformMike Taylor
 
What is Enterprise Resource Planning, SAP and SAP FIORI?
What is Enterprise Resource Planning, SAP and SAP FIORI? What is Enterprise Resource Planning, SAP and SAP FIORI?
What is Enterprise Resource Planning, SAP and SAP FIORI? Pavan Golesar
 
October 2020 GatherUp Webinar
October 2020 GatherUp WebinarOctober 2020 GatherUp Webinar
October 2020 GatherUp WebinarGatherUp
 
Miten API management toimii
Miten API management toimiiMiten API management toimii
Miten API management toimiiAmbientia
 

What's hot (20)

Tips and tweaks on migrating to magento!
Tips and tweaks on migrating to magento!Tips and tweaks on migrating to magento!
Tips and tweaks on migrating to magento!
 
Accelerating eCommerce Experiences: 2016 Holiday Case Study
Accelerating eCommerce Experiences: 2016 Holiday Case StudyAccelerating eCommerce Experiences: 2016 Holiday Case Study
Accelerating eCommerce Experiences: 2016 Holiday Case Study
 
SPI Products Innovation
SPI Products InnovationSPI Products Innovation
SPI Products Innovation
 
Monitoring your cache effectiveness in Magento 2
Monitoring your cache effectiveness in Magento 2Monitoring your cache effectiveness in Magento 2
Monitoring your cache effectiveness in Magento 2
 
Magento Meetup Mancheter with PushON: Elena Leonova
Magento Meetup Mancheter with PushON: Elena Leonova Magento Meetup Mancheter with PushON: Elena Leonova
Magento Meetup Mancheter with PushON: Elena Leonova
 
Site24x7 Website Performance Benchmarks
Site24x7 Website Performance Benchmarks Site24x7 Website Performance Benchmarks
Site24x7 Website Performance Benchmarks
 
Monyog v7.04 demonstration & roadmap update
Monyog v7.04 demonstration & roadmap updateMonyog v7.04 demonstration & roadmap update
Monyog v7.04 demonstration & roadmap update
 
TechChat - What’s New in Sumo Logic 4/28/15
TechChat - What’s New in Sumo Logic 4/28/15TechChat - What’s New in Sumo Logic 4/28/15
TechChat - What’s New in Sumo Logic 4/28/15
 
Alternative to SolarWinds
Alternative to SolarWindsAlternative to SolarWinds
Alternative to SolarWinds
 
Monitoring Atlassian Applications
Monitoring Atlassian ApplicationsMonitoring Atlassian Applications
Monitoring Atlassian Applications
 
Webinar: The Power of iPaaS in Business Process Automation in the Digital Age
Webinar: The Power of iPaaS in Business Process Automation in the Digital AgeWebinar: The Power of iPaaS in Business Process Automation in the Digital Age
Webinar: The Power of iPaaS in Business Process Automation in the Digital Age
 
How to Enable Monetization of Your API Ecosystem
How to Enable Monetization of Your API EcosystemHow to Enable Monetization of Your API Ecosystem
How to Enable Monetization of Your API Ecosystem
 
AS400 IBM iSeries Migration
AS400 IBM iSeries MigrationAS400 IBM iSeries Migration
AS400 IBM iSeries Migration
 
Bangalore Executive Seminar 2015: Business Transformation Case Study - Tecnotree
Bangalore Executive Seminar 2015: Business Transformation Case Study - TecnotreeBangalore Executive Seminar 2015: Business Transformation Case Study - Tecnotree
Bangalore Executive Seminar 2015: Business Transformation Case Study - Tecnotree
 
ILAP 1.0 SP 04 Release Information
ILAP 1.0 SP 04 Release InformationILAP 1.0 SP 04 Release Information
ILAP 1.0 SP 04 Release Information
 
Shopify Akeneo Connector
Shopify Akeneo ConnectorShopify Akeneo Connector
Shopify Akeneo Connector
 
Case Study for Microsoft ERP for Retailers Magento Ecommerce Platform
Case Study for Microsoft ERP for Retailers Magento Ecommerce PlatformCase Study for Microsoft ERP for Retailers Magento Ecommerce Platform
Case Study for Microsoft ERP for Retailers Magento Ecommerce Platform
 
What is Enterprise Resource Planning, SAP and SAP FIORI?
What is Enterprise Resource Planning, SAP and SAP FIORI? What is Enterprise Resource Planning, SAP and SAP FIORI?
What is Enterprise Resource Planning, SAP and SAP FIORI?
 
October 2020 GatherUp Webinar
October 2020 GatherUp WebinarOctober 2020 GatherUp Webinar
October 2020 GatherUp Webinar
 
Miten API management toimii
Miten API management toimiiMiten API management toimii
Miten API management toimii
 

Similar to Eugene Shaksuvarov - Tuning Magento 2 for Maximum Performance

Magento Function Testing Framework - Intro and Overview
Magento Function Testing Framework - Intro and OverviewMagento Function Testing Framework - Intro and Overview
Magento Function Testing Framework - Intro and OverviewTom Erskine
 
White Paper - Magento 2.0 Performance and Scalability 03.31.16
White Paper - Magento 2.0 Performance and Scalability 03.31.16White Paper - Magento 2.0 Performance and Scalability 03.31.16
White Paper - Magento 2.0 Performance and Scalability 03.31.16Patrick Kong
 
The long way from Monolith to Microservices
The long way from Monolith to MicroservicesThe long way from Monolith to Microservices
The long way from Monolith to MicroservicesIgor Miniailo
 
Eugene Shakhsuvarov - Improving enterprise store scalability using AMQP and A...
Eugene Shakhsuvarov - Improving enterprise store scalability using AMQP and A...Eugene Shakhsuvarov - Improving enterprise store scalability using AMQP and A...
Eugene Shakhsuvarov - Improving enterprise store scalability using AMQP and A...Meet Magento Italy
 
Magento2.3 API Functional Testing
Magento2.3 API Functional TestingMagento2.3 API Functional Testing
Magento2.3 API Functional TestingVishwas Bhatnagar
 
Igor Miniailo - Magento 2 API Design Best Practices
Igor Miniailo - Magento 2 API Design Best PracticesIgor Miniailo - Magento 2 API Design Best Practices
Igor Miniailo - Magento 2 API Design Best PracticesAtwix
 
Макс Екатериненко - Meet Magento Ukraine - Magento 2 Overview
Макс Екатериненко - Meet Magento Ukraine - Magento 2 OverviewМакс Екатериненко - Meet Magento Ukraine - Magento 2 Overview
Макс Екатериненко - Meet Magento Ukraine - Magento 2 OverviewAtwix
 
Magento 2 Automated Testing via examples of Multi-Source Inventory (MSI)
Magento 2 Automated Testing via examples of Multi-Source Inventory (MSI)Magento 2 Automated Testing via examples of Multi-Source Inventory (MSI)
Magento 2 Automated Testing via examples of Multi-Source Inventory (MSI)Igor Miniailo
 
Automated Testing in Magento 2
Automated Testing in Magento 2Automated Testing in Magento 2
Automated Testing in Magento 2Magecom UK Limited
 
Backward Compatibility Developer's Guide in Magento 2. #MM17CZ
Backward Compatibility Developer's Guide in Magento 2. #MM17CZBackward Compatibility Developer's Guide in Magento 2. #MM17CZ
Backward Compatibility Developer's Guide in Magento 2. #MM17CZIgor Miniailo
 
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentationvue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentationDivante
 
Optimizing Magento for Peak Performance
Optimizing Magento for Peak PerformanceOptimizing Magento for Peak Performance
Optimizing Magento for Peak PerformanceMageCloud
 
Advanced technologies and techniques for debugging HPC applications
Advanced technologies and techniques for debugging HPC applicationsAdvanced technologies and techniques for debugging HPC applications
Advanced technologies and techniques for debugging HPC applicationsRogue Wave Software
 
MDOQ - Platform As A Service Agile Workflow Application for Magento - Launch ...
MDOQ - Platform As A Service Agile Workflow Application for Magento - Launch ...MDOQ - Platform As A Service Agile Workflow Application for Magento - Launch ...
MDOQ - Platform As A Service Agile Workflow Application for Magento - Launch ...Arron Moss
 
Web Store with Catalog and Product Management
Web Store with Catalog and Product ManagementWeb Store with Catalog and Product Management
Web Store with Catalog and Product ManagementMike Taylor
 
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...I-Verve Inc
 
Make synthetic monitoring a critical part of your IT monitoring strategy: Why...
Make synthetic monitoring a critical part of your IT monitoring strategy: Why...Make synthetic monitoring a critical part of your IT monitoring strategy: Why...
Make synthetic monitoring a critical part of your IT monitoring strategy: Why...eG Innovations
 
Max Yekaterinenko - Magento 2 & Quality
Max Yekaterinenko - Magento 2 & QualityMax Yekaterinenko - Magento 2 & Quality
Max Yekaterinenko - Magento 2 & QualityMeet Magento Italy
 
Introduction to tag management webinar
Introduction to tag management webinar Introduction to tag management webinar
Introduction to tag management webinar Qubit
 

Similar to Eugene Shaksuvarov - Tuning Magento 2 for Maximum Performance (20)

Magento Function Testing Framework - Intro and Overview
Magento Function Testing Framework - Intro and OverviewMagento Function Testing Framework - Intro and Overview
Magento Function Testing Framework - Intro and Overview
 
White Paper - Magento 2.0 Performance and Scalability 03.31.16
White Paper - Magento 2.0 Performance and Scalability 03.31.16White Paper - Magento 2.0 Performance and Scalability 03.31.16
White Paper - Magento 2.0 Performance and Scalability 03.31.16
 
White Paper - Magento 2.0 Performance and Scalability 03.31.16
White Paper - Magento 2.0 Performance and Scalability 03.31.16White Paper - Magento 2.0 Performance and Scalability 03.31.16
White Paper - Magento 2.0 Performance and Scalability 03.31.16
 
The long way from Monolith to Microservices
The long way from Monolith to MicroservicesThe long way from Monolith to Microservices
The long way from Monolith to Microservices
 
Eugene Shakhsuvarov - Improving enterprise store scalability using AMQP and A...
Eugene Shakhsuvarov - Improving enterprise store scalability using AMQP and A...Eugene Shakhsuvarov - Improving enterprise store scalability using AMQP and A...
Eugene Shakhsuvarov - Improving enterprise store scalability using AMQP and A...
 
Magento2.3 API Functional Testing
Magento2.3 API Functional TestingMagento2.3 API Functional Testing
Magento2.3 API Functional Testing
 
Igor Miniailo - Magento 2 API Design Best Practices
Igor Miniailo - Magento 2 API Design Best PracticesIgor Miniailo - Magento 2 API Design Best Practices
Igor Miniailo - Magento 2 API Design Best Practices
 
Макс Екатериненко - Meet Magento Ukraine - Magento 2 Overview
Макс Екатериненко - Meet Magento Ukraine - Magento 2 OverviewМакс Екатериненко - Meet Magento Ukraine - Magento 2 Overview
Макс Екатериненко - Meet Magento Ukraine - Magento 2 Overview
 
Magento 2 Automated Testing via examples of Multi-Source Inventory (MSI)
Magento 2 Automated Testing via examples of Multi-Source Inventory (MSI)Magento 2 Automated Testing via examples of Multi-Source Inventory (MSI)
Magento 2 Automated Testing via examples of Multi-Source Inventory (MSI)
 
Automated Testing in Magento 2
Automated Testing in Magento 2Automated Testing in Magento 2
Automated Testing in Magento 2
 
Backward Compatibility Developer's Guide in Magento 2. #MM17CZ
Backward Compatibility Developer's Guide in Magento 2. #MM17CZBackward Compatibility Developer's Guide in Magento 2. #MM17CZ
Backward Compatibility Developer's Guide in Magento 2. #MM17CZ
 
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentationvue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
vue-storefront - PWA eCommerce for Magento2 MM17NYC presentation
 
Optimizing Magento for Peak Performance
Optimizing Magento for Peak PerformanceOptimizing Magento for Peak Performance
Optimizing Magento for Peak Performance
 
Advanced technologies and techniques for debugging HPC applications
Advanced technologies and techniques for debugging HPC applicationsAdvanced technologies and techniques for debugging HPC applications
Advanced technologies and techniques for debugging HPC applications
 
MDOQ - Platform As A Service Agile Workflow Application for Magento - Launch ...
MDOQ - Platform As A Service Agile Workflow Application for Magento - Launch ...MDOQ - Platform As A Service Agile Workflow Application for Magento - Launch ...
MDOQ - Platform As A Service Agile Workflow Application for Magento - Launch ...
 
Web Store with Catalog and Product Management
Web Store with Catalog and Product ManagementWeb Store with Catalog and Product Management
Web Store with Catalog and Product Management
 
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...
How to Improve Magento Performance | Tips to Speed up Magento eCommerce Site/...
 
Make synthetic monitoring a critical part of your IT monitoring strategy: Why...
Make synthetic monitoring a critical part of your IT monitoring strategy: Why...Make synthetic monitoring a critical part of your IT monitoring strategy: Why...
Make synthetic monitoring a critical part of your IT monitoring strategy: Why...
 
Max Yekaterinenko - Magento 2 & Quality
Max Yekaterinenko - Magento 2 & QualityMax Yekaterinenko - Magento 2 & Quality
Max Yekaterinenko - Magento 2 & Quality
 
Introduction to tag management webinar
Introduction to tag management webinar Introduction to tag management webinar
Introduction to tag management webinar
 

More from Meet Magento Italy

Dirk Pinamonti - Come affrontare la sfida del nuovo mercato multicanale e del...
Dirk Pinamonti - Come affrontare la sfida del nuovo mercato multicanale e del...Dirk Pinamonti - Come affrontare la sfida del nuovo mercato multicanale e del...
Dirk Pinamonti - Come affrontare la sfida del nuovo mercato multicanale e del...Meet Magento Italy
 
Vinai Kopp - How i develop M2 modules
Vinai Kopp - How i develop M2 modules Vinai Kopp - How i develop M2 modules
Vinai Kopp - How i develop M2 modules Meet Magento Italy
 
Muliadi jeo - How to sell online in Indonesia
Muliadi jeo - How to sell online in IndonesiaMuliadi jeo - How to sell online in Indonesia
Muliadi jeo - How to sell online in IndonesiaMeet Magento Italy
 
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2Max Pronko - 10 migration mistakes from Magento 1 to Magento 2
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2Meet Magento Italy
 
Alessandro La Ciura - Progettare la migliore integrazione tra live chat ed e-...
Alessandro La Ciura - Progettare la migliore integrazione tra live chat ed e-...Alessandro La Ciura - Progettare la migliore integrazione tra live chat ed e-...
Alessandro La Ciura - Progettare la migliore integrazione tra live chat ed e-...Meet Magento Italy
 
Bodin - Hullin & Potencier - Magento Performance Profiling and Best Practices
Bodin - Hullin & Potencier - Magento Performance Profiling and Best PracticesBodin - Hullin & Potencier - Magento Performance Profiling and Best Practices
Bodin - Hullin & Potencier - Magento Performance Profiling and Best PracticesMeet Magento Italy
 
Giulio Gargiullo - Strategie di marketing digitale per avviare l’e-commerce i...
Giulio Gargiullo - Strategie di marketing digitale per avviare l’e-commerce i...Giulio Gargiullo - Strategie di marketing digitale per avviare l’e-commerce i...
Giulio Gargiullo - Strategie di marketing digitale per avviare l’e-commerce i...Meet Magento Italy
 
Vinai Kopp - FPC Hole punching in Magento 2
Vinai Kopp - FPC Hole punching in Magento 2Vinai Kopp - FPC Hole punching in Magento 2
Vinai Kopp - FPC Hole punching in Magento 2Meet Magento Italy
 
Jacopo Nardiello - From CI to Prod: Running Magento at scale with Kubernetes
Jacopo Nardiello - From CI to Prod: Running Magento at scale with KubernetesJacopo Nardiello - From CI to Prod: Running Magento at scale with Kubernetes
Jacopo Nardiello - From CI to Prod: Running Magento at scale with KubernetesMeet Magento Italy
 
James Zetlen - PWA Studio Integration…With You
James Zetlen - PWA Studio Integration…With YouJames Zetlen - PWA Studio Integration…With You
James Zetlen - PWA Studio Integration…With YouMeet Magento Italy
 
Talesh Seeparsan - The Hound of the Malwarevilles
Talesh Seeparsan - The Hound of the MalwarevillesTalesh Seeparsan - The Hound of the Malwarevilles
Talesh Seeparsan - The Hound of the MalwarevillesMeet Magento Italy
 
Miguel Balparda - A day in support
Miguel Balparda - A day in supportMiguel Balparda - A day in support
Miguel Balparda - A day in supportMeet Magento Italy
 
Volodymyr Kublytskyi - Develop Product, Design Platform
Volodymyr Kublytskyi - Develop Product, Design PlatformVolodymyr Kublytskyi - Develop Product, Design Platform
Volodymyr Kublytskyi - Develop Product, Design PlatformMeet Magento Italy
 
Rosario Toscano - Processi di ottimizzazione per una crescita continua
Rosario Toscano - Processi di ottimizzazione per una crescita continuaRosario Toscano - Processi di ottimizzazione per una crescita continua
Rosario Toscano - Processi di ottimizzazione per una crescita continuaMeet Magento Italy
 
Henrik Feld Jakobsen - How to sell online Scandinavia
Henrik Feld Jakobsen - How to sell online ScandinaviaHenrik Feld Jakobsen - How to sell online Scandinavia
Henrik Feld Jakobsen - How to sell online ScandinaviaMeet Magento Italy
 
Rabia Qureshi - How to sell online in UK
Rabia Qureshi - How to sell online in UKRabia Qureshi - How to sell online in UK
Rabia Qureshi - How to sell online in UKMeet Magento Italy
 
Matteo Schuerch - How to sell online in Switzerland
Matteo Schuerch - How to sell online in SwitzerlandMatteo Schuerch - How to sell online in Switzerland
Matteo Schuerch - How to sell online in SwitzerlandMeet Magento Italy
 
Il data-driven nell’e-commerce: il caso studio Alessi
Il data-driven nell’e-commerce: il caso studio AlessiIl data-driven nell’e-commerce: il caso studio Alessi
Il data-driven nell’e-commerce: il caso studio AlessiMeet Magento Italy
 
Philippe Bernou - Seamless omnichannel solutions with Magento order management
Philippe Bernou - Seamless omnichannel solutions with Magento order managementPhilippe Bernou - Seamless omnichannel solutions with Magento order management
Philippe Bernou - Seamless omnichannel solutions with Magento order managementMeet Magento Italy
 
Giovanni Cappellotto - Navigare nelle acque agitate del marketing su Amazon e...
Giovanni Cappellotto - Navigare nelle acque agitate del marketing su Amazon e...Giovanni Cappellotto - Navigare nelle acque agitate del marketing su Amazon e...
Giovanni Cappellotto - Navigare nelle acque agitate del marketing su Amazon e...Meet Magento Italy
 

More from Meet Magento Italy (20)

Dirk Pinamonti - Come affrontare la sfida del nuovo mercato multicanale e del...
Dirk Pinamonti - Come affrontare la sfida del nuovo mercato multicanale e del...Dirk Pinamonti - Come affrontare la sfida del nuovo mercato multicanale e del...
Dirk Pinamonti - Come affrontare la sfida del nuovo mercato multicanale e del...
 
Vinai Kopp - How i develop M2 modules
Vinai Kopp - How i develop M2 modules Vinai Kopp - How i develop M2 modules
Vinai Kopp - How i develop M2 modules
 
Muliadi jeo - How to sell online in Indonesia
Muliadi jeo - How to sell online in IndonesiaMuliadi jeo - How to sell online in Indonesia
Muliadi jeo - How to sell online in Indonesia
 
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2Max Pronko - 10 migration mistakes from Magento 1 to Magento 2
Max Pronko - 10 migration mistakes from Magento 1 to Magento 2
 
Alessandro La Ciura - Progettare la migliore integrazione tra live chat ed e-...
Alessandro La Ciura - Progettare la migliore integrazione tra live chat ed e-...Alessandro La Ciura - Progettare la migliore integrazione tra live chat ed e-...
Alessandro La Ciura - Progettare la migliore integrazione tra live chat ed e-...
 
Bodin - Hullin & Potencier - Magento Performance Profiling and Best Practices
Bodin - Hullin & Potencier - Magento Performance Profiling and Best PracticesBodin - Hullin & Potencier - Magento Performance Profiling and Best Practices
Bodin - Hullin & Potencier - Magento Performance Profiling and Best Practices
 
Giulio Gargiullo - Strategie di marketing digitale per avviare l’e-commerce i...
Giulio Gargiullo - Strategie di marketing digitale per avviare l’e-commerce i...Giulio Gargiullo - Strategie di marketing digitale per avviare l’e-commerce i...
Giulio Gargiullo - Strategie di marketing digitale per avviare l’e-commerce i...
 
Vinai Kopp - FPC Hole punching in Magento 2
Vinai Kopp - FPC Hole punching in Magento 2Vinai Kopp - FPC Hole punching in Magento 2
Vinai Kopp - FPC Hole punching in Magento 2
 
Jacopo Nardiello - From CI to Prod: Running Magento at scale with Kubernetes
Jacopo Nardiello - From CI to Prod: Running Magento at scale with KubernetesJacopo Nardiello - From CI to Prod: Running Magento at scale with Kubernetes
Jacopo Nardiello - From CI to Prod: Running Magento at scale with Kubernetes
 
James Zetlen - PWA Studio Integration…With You
James Zetlen - PWA Studio Integration…With YouJames Zetlen - PWA Studio Integration…With You
James Zetlen - PWA Studio Integration…With You
 
Talesh Seeparsan - The Hound of the Malwarevilles
Talesh Seeparsan - The Hound of the MalwarevillesTalesh Seeparsan - The Hound of the Malwarevilles
Talesh Seeparsan - The Hound of the Malwarevilles
 
Miguel Balparda - A day in support
Miguel Balparda - A day in supportMiguel Balparda - A day in support
Miguel Balparda - A day in support
 
Volodymyr Kublytskyi - Develop Product, Design Platform
Volodymyr Kublytskyi - Develop Product, Design PlatformVolodymyr Kublytskyi - Develop Product, Design Platform
Volodymyr Kublytskyi - Develop Product, Design Platform
 
Rosario Toscano - Processi di ottimizzazione per una crescita continua
Rosario Toscano - Processi di ottimizzazione per una crescita continuaRosario Toscano - Processi di ottimizzazione per una crescita continua
Rosario Toscano - Processi di ottimizzazione per una crescita continua
 
Henrik Feld Jakobsen - How to sell online Scandinavia
Henrik Feld Jakobsen - How to sell online ScandinaviaHenrik Feld Jakobsen - How to sell online Scandinavia
Henrik Feld Jakobsen - How to sell online Scandinavia
 
Rabia Qureshi - How to sell online in UK
Rabia Qureshi - How to sell online in UKRabia Qureshi - How to sell online in UK
Rabia Qureshi - How to sell online in UK
 
Matteo Schuerch - How to sell online in Switzerland
Matteo Schuerch - How to sell online in SwitzerlandMatteo Schuerch - How to sell online in Switzerland
Matteo Schuerch - How to sell online in Switzerland
 
Il data-driven nell’e-commerce: il caso studio Alessi
Il data-driven nell’e-commerce: il caso studio AlessiIl data-driven nell’e-commerce: il caso studio Alessi
Il data-driven nell’e-commerce: il caso studio Alessi
 
Philippe Bernou - Seamless omnichannel solutions with Magento order management
Philippe Bernou - Seamless omnichannel solutions with Magento order managementPhilippe Bernou - Seamless omnichannel solutions with Magento order management
Philippe Bernou - Seamless omnichannel solutions with Magento order management
 
Giovanni Cappellotto - Navigare nelle acque agitate del marketing su Amazon e...
Giovanni Cappellotto - Navigare nelle acque agitate del marketing su Amazon e...Giovanni Cappellotto - Navigare nelle acque agitate del marketing su Amazon e...
Giovanni Cappellotto - Navigare nelle acque agitate del marketing su Amazon e...
 

Recently uploaded

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 

Recently uploaded (20)

Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 

Eugene Shaksuvarov - Tuning Magento 2 for Maximum Performance

  • 1. © 2018 Magento, Inc. Page | 1
  • 2. © 2018 Magento, Inc. Page | 2 How would you like your Magento? In our case it would be slightly different: • Fast • Easy to work with • Extensible & Customizable • “Free” is still an option
  • 3. © 2018 Magento, Inc. Page | 3 Performance refers to the speed and effectiveness of a system under a given workload within a given time frame
  • 4. © 2018 Magento, Inc. Page | 4 Scalability is the ability of software to handle an increase in workload by scaling horizontally
  • 5. © 2018 Magento, Inc. Page | 5 Is Performance === Scalability?
  • 6. © 2018 Magento, Inc. Page | 6 Reactions when Magento 2.0 released…
  • 7. © 2018 Magento, Inc. Page | 7 Agenda • New and Upcoming Features Overview – Scalability Modules – Queues – Bulk API • Performance Evaluation – Test data generation – Server Side Tests – Client Side Tests – Profiling – How we make use of all this?
  • 8. © 2018 Magento, Inc. Page | 8 Queues support in Magento Open Source • Migrating from EE to CE in the upcoming 2.3 release • Includes Amqp support and AsynchronousOperations module • Already available to explore in 2.3-develop branch on magento2 Github
  • 9. © 2018 Magento, Inc. Page | 9 Bulk API in Magento Open Source • Introduced in upcoming 2.3 • Developed by the Community and Contributing Solution Partners • Allows to perform API request with multiple entities and defer processing leveraging RabbitMQ • Partially built on top of queues framework and AsynchronousOperations migrated to CE
  • 10. © 2018 Magento, Inc. Page | 10 Parallel indexation • Available 2.2.5 onwards • For 2.3 it is planned to make use of queues instead of pcctl_fork • Available for category product and catalog fulltext indexes • Price indexer paralleling is scheduled for upcoming releases • Number of processes is configurable with environment variable • Indexing is Scoped per store • May not be applicable for all merchants and use cases
  • 11. © 2018 Magento, Inc. Page | 11 Indexer batching • Available 2.2.0 onwards • Allows to manage and fine tune indexer batch size • Must be optimized per each individual merchant and catalog, as may degrade performance otherwise
  • 12. © 2018 Magento, Inc. Page | 12 Popular search terms caching • Available in 2.2.5+ • Allow merchant to select number of top search terms to be cached • Allows merchant to select caching depth • Enabled by default however number should be fine tuned per store needs
  • 13. © 2018 Magento, Inc. Page | 13 Scalability Modules • Currently available only in Magento Commerce Edition (former EE) • Allows merchant to configure and use up to 3 master databases • Checkout and Order Management may have a dedicated database master each
  • 14. © 2018 Magento, Inc. Page | 14 Magento Performance Toolkit
  • 15. © 2018 Magento, Inc. Page | 15 Performance Toolkit • Evaluate performance and scalability • Simulate high load and detect bottlenecks • Extensibility planning (which direction and how?) • Verify assumptions • Reproduce ”incorrect” behavior • Differential testing – Different Software – Different Hardware
  • 16. © 2018 Magento, Inc. Page | 16 Profile Generator • Implemented with PHP and Magento Framework (/setup/src/Magento/Setup/Fixtures/*Fixture.php) • XML configuration <?xml version="1.0"?> <config xmlns:xi="http://www.w3.org/2001/XInclude"> <profile> <websites>1</websites> <!-- Number of websites to generate --> <store_groups>1</store_groups> <!--Number of stores--> <store_views>1</store_views> <!-- Number of store views --> <assign_entities_to_all_websites>0</assign_entities_to_all_websites> <simple_products>800</simple_products> <!-- Simple products count --> <product-images> <images-count>100</images-count> <images-per-product>3</images-per-product> </product-images> <categories>30</categories> <!-- Number of categories to generate --> <categories_nesting_level>3</categories_nesting_level <customers>200</customers> <!-- Number of customers to generate --> </profile> </config>
  • 17. © 2018 Magento, Inc. Page | 17 Structure of Magento Performance Toolkit Profile Generator CLI: bin/magento setup:performance:generate-fixtures Profiles: /setup/performance-toolkit/profiles/*/*.xml Scenarios: Apache JMeter™ /setup/performance-toolkit/benchmark.jmx
  • 18. © 2018 Magento, Inc. Page | 18 Which entities can be generated? Bundle Products Admin Users Categories Configurable Products Product Images Swatches Attribute sets Cart price rules Catalog Price Rules Customers Websites & Stores Views Tax Rates Orders Shared Catalog Negotiable Quotes Companies Target Rules Simple products
  • 19. © 2018 Magento, Inc. Page | 19 Small Medium Large X-Large Website/Store Views 1/1 3/3 5/5 5/5 Total Sku 1000 39k 500k 1M Simple Product 800 24k 300k 600k Configurable with 24 variations 16/24 640/24 8k/24 16k/24 Attribute Sets 10 100 200 200 Attributes per Set 10 50 50 50 Categories 30 300 3k 6k Customers 200 2k 5k 10k Orders 80 50k 100k 150k Bundled Profiles
  • 20. © 2018 Magento, Inc. Page | 20 Profile Generator CLI
  • 21. © 2018 Magento, Inc. Page | 21 What You See
  • 22. © 2018 Magento, Inc. Page | 22 Is What You Get
  • 23. © 2018 Magento, Inc. Page | 23 User Behavior Emulation
  • 24. © 2018 Magento, Inc. Page | 24 Profiling How hard can it be?
  • 25. © 2018 Magento, Inc. Page | 25 Popular Tools Pros: • Free & Open Source • Easy to Set Up • Profile only what you need Cons: • XHGUI • MongoDB Pros: • User-Friendly UI • Multitude of Integrations • Well documented • Feature rich Cons: • Proprietary
  • 26. © 2018 Magento, Inc. Page | 26 Tideways + XHGui
  • 27. © 2018 Magento, Inc. Page | 27 Client Side Tests With SiteSpeed.io
  • 28. © 2018 Magento, Inc. Page | 28 SiteSpeed.io • Sitespeed.io Browser performance evaluation and reporting • Report generation easy as 1-2-3: docker run --shm-size=1g --rm -v "$(pwd)":/sitespeed.io sitespeedio/sitespeed.io http://your.magento.site/homepage.html
  • 29. © 2018 Magento, Inc. Page | 29 Sitespeed.io Metrics
  • 30. © 2018 Magento, Inc. Page | 30 Sitespeed.io – Page Load Details
  • 31. © 2018 Magento, Inc. Page | 31 How we make use of all this?
  • 32. © 2018 Magento, Inc. Page | 32 Performance focused CICD jobs • On each Pull Request • Nightly • Monthly • On-demand • For every version
  • 33. © 2018 Magento, Inc. Page | 33 Continuous reporting and trend monitoring This Pull Request seems to be pretty safe to merge
  • 34. © 2018 Magento, Inc. Page | 34 Great Day for the Performance Team
  • 35. © 2018 Magento, Inc. Page | 35 Resources • https://devdocs.magento.com/guides/v2.2/config-guide/cli/config-cli- subcommands-perf-data.html • https://jmeter.apache.org • https://tideways.io – https://github.com/kandy/xhgui (fork) • https://blackfire.io • https://www.sitespeed.io
  • 36. © 2018 Magento, Inc. Page | 36 Grazie!