Apache: сравнение работы с различными модулями + NGINX

Автор: | 16/09/2012
 

Проверка не претендует на полную объективность, тем не менее результаты интеерсные.

Использовалась утили Apache Bech, о ней тут>>>.

VPS сервер с 500 МГц и 512 Мб, ОС FreeBSD 9.0.

В виртуалхосте установлена “голая” CMS WordPress.

Apache с mod_php и MPM Prefork.

$ ab -n 100 -c 1 http://milka.org.ua:80/

last pid: 98248; load averages: 1.06, 0.75, 1.16 up 1+18:13:36 09:12:23
36 processes: 3 running, 33 sleeping

Mem: 97M Active, 208M Inact, 91M Wired, 17M Cache, 59M Buf, 73M Free
Swap: 1536M Total, 6440K Used, 1530M Free

Requests per second: 0.98 [#/sec] (mean)
Time per request: 1024.477 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50% 1001
66% 1041
75% 1067
80% 1167
90% 1279
95% 1495
98% 1543
99% 3642
100% 3642 (longest request)

ab -n 100 -c 5 http://milka.org.ua:80/

last pid: 98263; load averages: 4.27, 1.67, 1.40 up 1+18:16:57 09:15:44
37 processes: 6 running, 31 sleeping

Mem: 99M Active, 215M Inact, 91M Wired, 17M Cache, 59M Buf, 64M Free
Swap: 1536M Total, 6440K Used, 1530M Free

Requests per second: 1.08 [#/sec] (mean)
Time per request: 4634.767 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50% 4499
66% 5013
75% 5252
80% 5347
90% 6484
95% 7487
98% 8206
99% 8803
100% 8803 (longest request)

ab -n 100 -c 10 http://milka.org.ua:80/

last pid: 98278; load averages: 8.04, 3.39, 2.09 up 1+18:19:55 09:18:42
43 processes: 11 running, 32 sleeping

Mem: 106M Active, 262M Inact, 91M Wired, 16M Cache, 59M Buf, 10M Free
Swap: 1536M Total, 6440K Used, 1530M Free

Requests per second: 1.03 [#/sec] (mean)
Time per request: 9707.267 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50% 9540
66% 10487
75% 11163
80% 11989
90% 13679
95% 14634
98% 16435
99% 18059
100% 18059 (longest request)

ab -n 100 -c 20 http://milka.org.ua:80/

last pid: 98443; load averages: 14.36, 8.51, 6.07 up 1+18:29:29 09:28:16
54 processes: 21 running, 32 sleeping, 1 lock

Mem: 82M Active, 242M Inact, 92M Wired, 7012K Cache, 59M Buf, 63M Free
Swap: 1536M Total, 35M Used, 1501M Free, 2% Inuse

Requests per second: 1.00 [#/sec] (mean)
Time per request: 19936.519 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50% 18745
66% 21757
75% 24867
80% 26559
90% 30080
95% 34814
98% 39623
99% 40211
100% 40211 (longest request)

Повторяем, теперь с mod_fcgid и MPM Worker.

ab -n 100 -c 1 http://milka.org.ua:80/

last pid: 17538;  load averages:  1.37,  0.80,  1.07  up 1+20:33:36    11:32:23
37 processes:  2 running, 35 sleeping

Mem: 45M Active, 63M Inact, 96M Wired, 14M Cache, 59M Buf, 267M Free
Swap: 1536M Total, 35M Used, 1501M Free, 2% Inuse

Requests per second:    1.04 [#/sec] (mean)
Time per request:       964.790 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50%   1001
66%   1031
75%   1054
80%   1066
90%   1165
95%   1225
98%   1236
99%   1257
100%   1257 (longest request)

ab -n 100 -c 5 http://milka.org.ua:80/

last pid: 17675;  load averages:  3.96,  1.60,  1.28  up 1+20:37:46    11:36:33
41 processes:  5 running, 36 sleeping

Mem: 58M Active, 93M Inact, 97M Wired, 14M Cache, 59M Buf, 224M Free
Swap: 1536M Total, 35M Used, 1501M Free, 2% Inuse

Requests per second:    1.02 [#/sec] (mean)
Time per request:       4883.010 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50%   4844
66%   5133
75%   5487
80%   5743
90%   6251
95%   6839
98%   7087
99%   7500
100%   7500 (longest request)

ab -n 100 -c 10 http://milka.org.ua:80/

last pid: 17807;  load averages:  7.53,  3.09,  1.90  up 1+20:42:16    11:41:03
46 processes:  11 running, 35 sleeping

Mem: 72M Active, 139M Inact, 97M Wired, 13M Cache, 59M Buf, 164M Free
Swap: 1536M Total, 35M Used, 1501M Free, 2% Inuse

Requests per second:    0.97 [#/sec] (mean)
Time per request:       10300.625 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50%  10308
66%  11169
75%  11906
80%  12224
90%  13712
95%  14877
98%  18172
99%  18641
100%  18641 (longest request)

ab -n 100 -c 20 http://milka.org.ua:80/

last pid: 17970;  load averages: 12.82,  5.28,  3.02  up 1+20:47:21    11:46:08
55 processes:  21 running, 34 sleeping

Mem: 107M Active, 223M Inact, 98M Wired, 11M Cache, 59M Buf, 47M Free
Swap: 1536M Total, 35M Used, 1501M Free, 2% Inuse

Requests per second:    0.95 [#/sec] (mean)
Time per request:       21125.961 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50%  20109
66%  21535
75%  22540
80%  24009
90%  27078
95%  34537
98%  38127
99%  40227
100%  40227 (longest request)

Теперь NGINX в режиме proxy + Apache с mod_fcgid и MPM Worker.

NGINX обрабатывает только jpg|jpeg|gif|png|ico файлы.

ab -n 100 -c 1 http://milka.org.ua:80/

last pid: 21439;  load averages:  1.19,  0.33,  0.30  up 1+21:32:13    12:31:00
38 processes:  3 running, 35 sleeping

Mem: 41M Active, 97M Inact, 84M Wired, 12M Cache, 59M Buf, 250M Free
Swap: 1536M Total, 35M Used, 1501M Free, 2% Inuse

Requests per second:    0.93 [#/sec] (mean)
Time per request:       1079.176 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50%   1147
66%   1196
75%   1215
80%   1238
90%   1309
95%   1365
98%   1451
99%   1454
100%   1454 (longest request)

ab -n 100 -c 5 http://milka.org.ua:80/

last pid: 21595;  load averages:  3.80,  1.25,  0.64  up 1+21:38:28    12:37:15
43 processes:  6 running, 37 sleeping

Mem: 54M Active, 128M Inact, 85M Wired, 12M Cache, 59M Buf, 206M Free
Swap: 1536M Total, 35M Used, 1501M Free, 2% Inuse

Requests per second:    1.01 [#/sec] (mean)
Time per request:       4943.166 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50%   4976
66%   5361
75%   5562
80%   5669
90%   6065
95%   6309
98%   7118
99%   8636
100%   8636 (longest request)

ab -n 100 -c 10 http://milka.org.ua:80/

last pid: 21763;  load averages:  6.94,  2.75,  1.39  up 1+21:43:25    12:42:12
48 processes:  11 running, 37 sleeping

Mem: 71M Active, 168M Inact, 85M Wired, 12M Cache, 59M Buf, 149M Free
Swap: 1536M Total, 35M Used, 1501M Free, 2% Inuse

Requests per second:    0.96 [#/sec] (mean)
Time per request:       10369.278 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50%  10406
66%  11148
75%  11569
80%  11719
90%  12344
95%  13119
98%  13466
99%  13517
100%  13517 (longest request)

ab -n 100 -c 20 http://milka.org.ua:80/

last pid: 21852;  load averages: 15.35,  6.73,  3.14  up 1+21:45:46    12:44:33
59 processes:  21 running, 38 sleeping

Mem: 106M Active, 251M Inact, 87M Wired, 12M Cache, 59M Buf, 30M Free
Swap: 1536M Total, 35M Used, 1501M Free, 2% Inuse

Requests per second:    0.97 [#/sec] (mean)
Time per request:       20685.173 [ms] (mean)

Percentage of the requests served within a certain time (ms)
50%  20177
66%  22183
75%  23487
80%  24152
90%  27305
95%  30965
98%  32955
99%  32956
100%  32956 (longest request)