SimpleHelix is always looking into how we can make Magento perform better. We test theories day in and day out and recently have been testing remote databases. We’ve tested several setups to see which setup would give us the best performance. Here are some results from our internal testing:
Quad Core Intel 2.0 frontend with 4GB of RAM using apache/php-cgi database scenarios:
tps= transactions per second
lon= longest transaction time in seconds (how long it would have taken that page to load)
res= average response time in seconds:
local mysql server only:
4 users:
tps: 1.76 1.75 1.86 1.73 1.76 1.70
lon: 3.52 2.88 2.77 3.17 2.51 3.00
res: 1.79 1.71 1.63 1.78 1.74 1.75
5 users:
tps: 1.96 1.85 2.00 1.93 1.96 2.01
lon: 3.76 4.52 3.14 4.44 4.72 3.26
res: 1.94 2.08 1.96 2.02 2.03 1.95
7 users:
tps: 2.26 2.10 2.07 2.10 2.18 2.08
lon: 4.07 6.04 6.15 6.41 5.14 5.56
res: 2.52 2.76 2.75 2.68 2.64 2.72
10 users:
tps: 2.32 2.20 2.25 2.27 2.25 2.17
lon: 6.92 9.23 7.34 5.76 7.70 8.08
res: 3.66 3.89 3.82 3.80 3.78 3.98
15 users:
tps: 2.23 2.08 2.10
lon: 11.39 15.05 12.14
res: 5.89 6.38 6.18
Now we switch to a single remote database for both reads and writes:
4 users:
tps: 2.85 2.62 2.69 2.37 2.82 2.55
lon: 2.31 2.44 2.22 1.97 1.37 2.95
res: 0.93 1.02 1.00 1.02 0.99 1.03
5 users:
tps: 3.16 3.41 3.09 3.31 3.27 3.04
lon: 3.04 1.29 2.58 1.35 2.83 2.65
res: 1.04 1.01 0.99 1.03 1.04 1.10
7 users:
tps: 3.66 3.64 3.34 3.58 3.74 3.49
lon: 3.79 5.36 6.59 3.95 4.05 6.91
res: 1.33 1.37 1.54 1.45 1.25 1.43
10 users:
tps: 3.95 3.48 3.04 2.92 3.48 3.21
lon: 8.10 11.35 10.57 9.69 8.52 8.88
res: 1.97 2.28 2.62 2.89 2.29 2.47
15 users:
tps: 2.99 2.50 2.10
lon: 23.11 21.87 23.12
res: 4.23 5.11 5.62
Now multiple remotes (read from one write to another):
4 users:
tps: 2.69 2.60 2.70 2.67 2.67 2.69
lon: 1.25 2.44 1.22 1.23 2.21 2.27
res: 0.96 1.01 0.95 0.96 1.01 0.96
5 users:
tps: 3.14 3.27 3.21 3.31 3.31 3.01
lon: 2.36 1.48 2.71 4.09 1.36 2.74
res: 1.06 1.01 1.06 1.03 1.01 1.06
7 users:
tps: 3.70 3.68 3.86 3.71 3.76 4.18
lon: 3.71 3.95 3.70 4.65 3.60 2.98
res: 1.45 1.41 1.25 1.36 1.32 1.13
10 users:
tps: 2.89 3.53 2.75 2.97 3.12 2.96
lon: 11.14 11.08 10.10 10.14 8.26 12.35
res: 2.81 2.19 2.98 2.74 2.54 2.79
15 users:
tps: 2.39 2.32 2.59
lon: 27.55 16.63 25.31
res: 5.41 5.66 4.99
Now we do it with Litespeed (2cpu license) INSTEAD of Apache, first with just the local database:
4 users:
tps: 1.74 1.95 1.85 1.97 1.90 2.05
lon: 4.06 3.38 4.41 4.21 3.08 2.44
res: 1.74 1.57 1.56 1.52 1.54 1.46
5 users:
tps: 2.10 2.08 2.18 2.17 2.20 2.20
lon: 3.67 3.82 6.09 4.87 4.17 3.62
res: 1.80 1.78 1.82 1.76 1.70 1.81
7 users:
tps: 2.38 2.28 2.32 2.22 2.33 2.23
lon: 5.26 8.85 5.62 7.07 5.50 4.86
res: 2.41 2.48 2.48 2.73 2.44 2.59
10 users:
tps: 2.30 2.38 2.33 2.28 2.23 2.32
lon: 6.56 16.08 9.36 8.58 8.78 8.29
res: 3.62 3.53 3.68 3.71 3.73 3.66
15 users:
tps: 2.28 2.28 2.28
lon: 12.62 11.83 11.88
res: 5.76 5.77 5.72
And now for are own curiosity let’s up the Litespeed license to 4 cores and rerun this:
4 users:
tps: 1.88 1.97 2.07 1.82 1.82 1.92
lon: 3.85 2.76 3.41 4.77 4.21 3.28
res: 1.57 1.45 1.49 1.69 1.65 1.59
5 users:
tps: 2.01 2.10 2.13 2.18 2.12 2.13
lon: 4.18 4.21 3.44 2.81 4.21 3.89
res: 1.93 1.74 1.74 1.75 1.83 1.87
7 users:
tps: 2.28 2.26 2.17 2.27 2.17 2.18
lon: 4.52 6.25 4.98 5.94 4.95 14.07
res: 2.46 2.46 2.66 2.56 2.42 2.67
10 users:
tps: 2.17 2.20 2.27 2.32 2.28 2.28
lon: 9.10 8.23 9.53 9.91 7.11 6.85
res: 4.02 3.82 3.67 3.64 3.72 3.54
15 users:
tps: 2.18 2.15 2.13
lon: 12.59 13.52 12.42
res: 6.02 6.14 6.25
Now with a single remote database:
4 users:
tps: 3.77 3.69 3.60 3.40 3.47 3.49
lon: 2.10 1.59 2.34 3.59 2.04 1.70
res: 0.62 0.58 0.61 0.65 0.65 0.61
5 users:
tps: 4.35 4.17 4.27 4.34 4.20 4.45
lon: 2.24 2.29 1.70 2.20 3.10 1.92
res: 0.66 0.72 0.62 0.65 0.68 0.65
7 users:
tps: 5.90 5.24 5.49 5.72 5.42 5.22
lon: 2.58 6.38 3.24 2.83 3.72 4.09
res: 0.66 0.80 0.75 0.74 0.68 0.80
10 users:
tps: 5.30 5.92 5.57 5.57 6.27 5.85
lon: 8.54 6.42 8.64 6.55 4.16 4.32
res: 1.40 1.16 1.27 1.30 1.10 1.15
15 users:
tps: 7.24 5.55 5.35 5.75
lon: 4.88 9.25 9.26 7.60
res: 1.51 2.12 2.26 1.98
25 users:
tps: 6.52 5.43
lon: 13.77 17.68
res: 3.18 3.88
Now with a pair of remote database servers:
4 users:
tps: 3.38 3.46 3.48 3.67 3.67 3.59
lon: 2.16 1.76 1.86 2.14 2.06 1.76
res: 0.64 0.59 0.59 0.61 0.63 0.58
5 users:
tps: 4.07 4.07 4.12 4.22 4.29 4.32
lon: 2.86 2.35 2.17 1.77 1.81 2.05
res: 0.70 0.65 0.67 0.61 0.62 0.65
7 users:
tps: 4.84 5.53 5.35 5.87 5.37 5.57
lon: 7.79 2.66 2.64 2.59 2.58 2.79
res: 0.82 0.78 0.83 0.67 0.82 0.72
10 users:
tps: 6.15 5.80 6.04 6.47 6.45 6.32
lon: 8.44 5.43 6.24 6.85 5.34 4.63
res: 1.13 1.18 1.17 1.02 1.04 1.04
15 users:
tps: 5.57 5.63 7.35 6.40 5.35 5.83
lon: 17.27 10.92 5.09 6.90 7.86 7.76
res: 2.11 2.09 1.48 1.74 2.13 2.01
25 users:
tps: 5.93 6.33
lon: 23.02 14.10
res: 3.52 3.27
Disabled XCache (and no other caching enabled):
25 users:
tps: 6.29 5.21
lon: 13.37 24.08
res: 3.32 4.13
15 users:
tps: 4.66
lon: 19.96
res: 2.62
The difference for apache/php with 1 or 2 remote mysql servers was a bit more pronounced than for litespeed/lsphp but the difference in local database/remote for litespeed was huge (around 300% increase!).



SimpleHelix is pleased to announce that we now offer VPS Semi-Dedicated Container hosting for your growing e-commerce websites. With Semi-Dedicated VPS Hosting, you are guaranteed a set amount of server resources to ensure that your website consistently runs at an optimal level. We recommend semi-dedicated hosting for websites hosting up to 15,000 Products.



