Scaling Techniques to Increase Magento Capacity
-
Upload
clustrix -
Category
Technology
-
view
629 -
download
0
Transcript of Scaling Techniques to Increase Magento Capacity
PowerPoint Presentation
1Scaling Techniques to Increase Magento Capacity
Or How to Get Ready for the Holiday and Cope with Fast Growth
Kevin Bortnick, Magento Solutions Architect at Clustrix
2015 CLUSTRIX
The First Scale-out SQL Database Engineered for Todays Cloud
PROPRIETARY AND CONFIDENTIAL2Kevin is a Certified Magento Developer. He has built and maintained some of the largest and most complex Magento-powered E-commerce sites.
Kevin lives in Las Vegas and is currently the Magento Solutions Architect for Clustrix.
As a Magento Architect I think about the futureHow easy is it to maintain?Can someone else support it?Can it handle growth?Can it be used for something else?When is it going to break?PROPRIETARY AND CONFIDENTIAL3
Symptoms of a Problem?Increased page load time
Spikes and Errors
Site Crashes
Support TicketsPROPRIETARY AND CONFIDENTIAL4
If you are seeing issuesLook in the obvious placesScale your Magento web nodesAdd Memcached or RedisAdd VarnishIf everything else is tuned right, the database becomes the next bottleneck PROPRIETARY AND CONFIDENTIAL5
Ways of Extending MySQLPROPRIETARY AND CONFIDENTIAL6Faster Hardware?Read Slaves?Multi Master?Partitioning?Percona?NoSQL?Clustrix?
Report Card Grading7Report CardMySQL CompatibleImproves PerformanceScales ReadsScales WritesNo Application ChangesNo Single Point of Failure
PerconaA drop-in replacement for MySQLPros:Easy to set up and useRetains consistent performance at high resource utilizationCons:Still has MySQL's architecture limitationsNo high availability or disaster recovery8Report CardMySQL CompatibleImproves PerformanceScales ReadsScales WritesLimitedNo Application ChangesNo Single Point of Failure
Faster HardwarePros:Immediate performance improvementsCons:Limit to how large you can goHigh-end hardware can get very expensive, especially when you include backup serversExcess hardware during off peak season9Report CardMySQL CompatibleImproves PerformanceScales ReadsLimitedScales WritesLimitedNo Application ChangesNo Single Point of Failure
Master with Read SlavesPros:Easy to doMagento has this feature built inCons:Does not help solve write checkout bottlenecksEventual consistency10
MasterSlaveSlaveReport CardMySQL CompatibleImproves PerformanceScales ReadsScales WritesNo Application ChangesNo Single Point of Failure
Master/Master, Store/AdminPros:Works well if you do a lot of updatesHelps for 24 hour storesCons:Have to accommodate edge casesDBA needs to monitor for replication issuesWon't fix front-end only bottlenecks11
StoreSlaveSlave
AdminReport CardMySQL CompatibleImproves PerformanceScales ReadsScales WritesNo Application ChangesNo Single Point of Failure
True Multi MasterProsCan deliver better overall performanceConsApplication must keep track of orders and inventory Latency can cause sync issuesExpensive to develop and maintainComplexity increases and stability decreases12
11b1a
22b2aReport CardMySQL CompatibleImproves PerformanceScales ReadsScales WritesNo Application ChangesNo Single Point of Failure
Partitioning (Magento 2 feature CQRS)ProsAble to distribute load ConsCant join between partitioned segmentsAmount of tables able to be partitioned is limitedHarder to maintainneed to track configurations13
Report CardMySQL CompatibleImproves PerformanceScales ReadsScales WritesLimitedNo Application ChangesLimitedNo Single Point of Failure
Ecommerce success creates site failure
HolidayFlash saleYou will hit something
Ways to fix your upcoming capacity problem
13
NoSQLPros:Runs very fast in non-ACID modeCons:Gains speed from short-cutting of ACIDCommits before writing to diskNo cross-document transactions NoSQL requires significant application development to swap-out MySQL14ACID = Transaction and Data SafetyReport CardMySQL CompatibleImproves PerformanceScales ReadsIn non-ACID modeScales WritesNo Application ChangesLimitedNo Single Point of Failure
Dont DropACID
14
ClustrixDB15ProsDrop-In Replacement for MySQLScales READS and WRITESDistributedShared NothingData RedundancyBuilt in high availability solution Low cost disaster recoveryElastic in the cloud and data centerSeasonal Flex, Self-Managing
Report CardMySQL CompatibleImproves PerformanceScales ReadsScales WritesNo Application ChangesNo Single Point of Failure
Easy to Administer
ClustrixDB
Flexing up for Seasonal Demand
The Flex Command Center
Wrap Up Think About the FutureHow easy is it to maintainCan someone else support itCan it handle growthCan it be used for something elseWhen is it going to break20Report CardMySQL CompatibleImproves PerformanceScales ReadsScales WritesNo Application ChangesNo Single Point of Failure
PROPRIETARY AND CONFIDENTIAL21Q & A
21
PROPRIETARY AND CONFIDENTIAL22Thank you
ClustrixDB Key DifferentiatorsAutomatic, 100%fault toleranceAvailabilityNo singlepoint of failureBattle-testedperformance
Flex up anddown, in minutesMassive,linear scalabilityCapacityExtremeconcurrency
ProductivityEliminatesre-architecting the databasePlug-in MySQLcompatibilitySelf-managingoperation
PROPRIETARY AND CONFIDENTIAL23Engineeredfor any cloudOne-clickinstallationCloudSeamlessscale-out
CloudDesigned for seamless installation and scale-out on any cloud-based infrastructure
CapacityFlex up and down, in minutes - If you need more capacity or performance, just connect and go.Massive, linear scalability - Readily handles massive volumes of customers, carts, orders, products, and business performance reportingExtreme concurrency - Manages millions of concurrent actions without impacting site response time
AvailabilityAutomatic, 100% fault tolerance High availability architecture to meet always-on demands of business-critical operationsNo single point of failure No impact from hardware outages; zero downtimeBattle-tested performance Proven rock solid performance at some the worlds fastest-growing companies. E.g., maintained superior service levels during 600% Cyber Monday sales spike (Choxi)
ProductivityPlug-in MySQL compatibility - Deploy in days, with few or no code changes. ClustrixDB is compatible with any application that uses MySQL, including the popular Magento platform for e-commerce and internally developed solutions. Eliminates re-architecting the database - Does away with complicated scaling strategies like sharding and replication, which are expensive, labor-intensive, and ultimately unsustainableSelf-managing operation Virtually eliminates DBA operations tasks because the management is built into the database itself
23