Upload
kevin-schroeder
View
464
Download
1
Tags:
Embed Size (px)
Citation preview
Insert photo of speaker here891 pixels h x 688 pixels w
10 ways to make Magento faster that have (almost) nothing to do with Magento
Technical Manager of Education
and Consulting
Kevin Schroeder@kpschrade http://www.eschrade.com/
Some stuff I’ve done
“Why you no build fast website!?”(This is your boss asking you)
Watch your resources
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
WaitIdleSystemUser
Watch Out For AllowOverride
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 170
0.05
0.1
0.15
0.2
With .htaccessWithout .htaccess With .htaccess Without .htaccess
0
500
1000
1500
2000
2500Top System Calls Throughput
Watch Out For AllowOverride
open
fcnt
lre
ad poll
sem
op
setit
imer
close
sets
ocko
pt
send
file
acce
pt4
shut
down
write
gets
ockn
ame
getti
meo
fday
epoll
_wait st
at
writev
fsta
t0
0.04
0.08
0.12
0.16
0.2
sem
opfc
ntl
read
sets
ocko
pt
close po
ll
gets
ockn
ame
epoll
_wait
shut
down
write
stat
send
file
acce
pt4
open
getti
meo
fday
writev
00.020.040.060.080.1
0.120.14
Event based systems work best for static content
1 2 3 4 5 6 7 8 9 10 11 12 13 14 150%
20%
40%
60%
80%
100%
Wait
Idle
System
User
1 2 3 4 5 6 7 8 9 10 11 12 13 14 150%
20%
40%
60%
80%
100%
Wait
Idle
System
User
Over Nginx (100 c.)
Over Apache (100 c.)
0 500 1000 1500 2000 2500
Give the customer something to look at
Which looks worse to your customer?What is more important?
How fast your site actually isor how fast your customer thinks it is?
Keep content close to the customer
US US US CA US US US US US GB US US US US US US BR BR GB TR0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
Connection close times by country to eschrade.com
3 63 123 183 243 303 363 423 483 543 603 663 723 783 843 903 963 102310831143120312630
0.5
1
1.5
2
2.5
3
3.5
4
Minimize external service calls
What are these?
Watch blocking network operations
NginX Over NFS NginX On Local0
500
1000
1500
2000
2500
Watch blocking network operations
Focus more on the end user, less on raw page stats
What people tend to focus on
What you should focus on
Reduce distinct assets
Which is better?
Not Convinced?
Need More Evidence?
Test with production scale data
Storytime
• Put data as close to the endpoint as reasonably as is possible
• Minimize superfluous operations as reasonably as is possible
• Never redo an operation unless it is unreasonable to do so
Principles of High Performance
?