![Page 1: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/1.jpg)
![Page 2: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/2.jpg)
Magento
Performance
Toolkit
![Page 3: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/3.jpg)
William Harvey
Principal Product Manager
Magento
![Page 4: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/4.jpg)
Performance Toolkit
![Page 5: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/5.jpg)
Magento Performance Testing – Control Variables
Test Protocol
Load Generator
Merchant Traffic Profile
Reference Store
Magento Platform
Environment
Reference System Architecture
![Page 6: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/6.jpg)
Load Generator
• Hardware
• Developer’s Performance System
• Software
• Apache jMeter 2.11 r1554548
• JMeterPlugins-Standard, JMeterPlugins-Extra
![Page 7: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/7.jpg)
Merchant Traffic Profile / Reference Store
Profile Websites Categories Simple Products Configurable Products
Small 1 30 800 50
Medium 1 300 16,000 1,000
Large 3 1,000 40,000 25,000
XL 5 3,000 800,000 50,000
![Page 8: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/8.jpg)
Magento Platform
• Magento Version
• EE 1.13.1.0
• Patches Applied
• PHP 5.4 Compatibility Patch
• Scalability Patch (SUPEE-3818)
![Page 9: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/9.jpg)
Environment (Hardware) – Desktop Example
• Developer’s Performance System
• CPU = 3.5 GHz, Quad-Core i7 (i4770k)
• RAM = 32 GB
• HDD = Sata III, Intel 530 Series 180GB SSD
![Page 10: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/10.jpg)
Environment (Hardware) – Virtual Server Example
• Cloud Application Server
• CPU = 2x vCPU, 2.3 GHz (Xeon E5-2530)
• RAM = 7 GB
• Cloud Database Server
• CPU = 4x vCPU, 2.3GHz (Xeon E5-2530)
• RAM = 7 GB
![Page 11: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/11.jpg)
Reference System Architecture – Examples
![Page 12: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/12.jpg)
Environment (Software)
• MySQL 5.4.38
• PHP 5.4.30
• Redis 2.6.17
![Page 13: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/13.jpg)
Environment (Software) – Example variables
• noatime, nodiratime
• no write barriers (barriers=0)
• swappiness = 10
• max file descriptors = 65535
![Page 14: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/14.jpg)
Test Protocol – Example
1. Prepare environment
a. Provision servers and load system software
b. Install Magento and apply patches
2. Execute generate.php to populate the store
3. Run performance.jmx once to prime the cache
4. Run performance.jmx again and report results
![Page 15: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/15.jpg)
Lessons Learned
![Page 16: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/16.jpg)
What have we learned?
• Magento runs better on PHP 5.4 http://www.magentocommerce.com/knowledge-base/entry/php54-patch
![Page 17: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/17.jpg)
What have we learned?
• Magento + PHP 5.3
Can see a major performance improvement with…
• Magento + Nginx + PHP-FPM
Is comparable to…
• Magento + PHP 5.4 + Opcache
![Page 18: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/18.jpg)
What have we learned?
• Use redis as a cache backend for Magento
• Native support in CE 1.8, EE 1.12 & later
http://info.magento.com/rs/magentocommerce/images/MagentoECG-
UsingRedisasaCacheBackendinMagento.pdf
![Page 19: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/19.jpg)
What have we learned?
• Importing is getting slower…
• Shopper experience is getting faster…
![Page 20: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/20.jpg)
What have we learned?
• Magento 1.14 is faster than 1.13...
• Magento 1.14 is slower than 1.13…
![Page 21: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/21.jpg)
What have we learned?
• Some extensions break caching…
• Magento EE FPC
• Nginx
• Varnish
![Page 22: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/22.jpg)
What is coming?
![Page 23: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/23.jpg)
What is coming?
• Performance Test Toolkit (1.12, 1.13, 1.14, 2.x)
• PHP Scripts (generate.php, indexer.php)
• jMeter Test Scripts (performance.jmx)
• Whitepaper: Magento Performance Test Guidelines
![Page 24: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/24.jpg)
Q&A
![Page 25: Magento Performance · Magento Performance Testing – Control Variables Test Protocol Load Generator Merchant Traffic Profile Reference Store ... • Apache jMeter 2.11 r1554548](https://reader031.vdocuments.us/reader031/viewer/2022022602/5b5951777f8b9ad0048cd757/html5/thumbnails/25.jpg)
Magento
Performance
Toolkit