PHP性能不行,PHP框架性能不权威对比

测试环境

OS : Deepin 15.4 unstable

Kernel : x86_64 Linux 4.9.0-deepin4-amd64

Uptime : 3d 22h 42m

Packages : 2050

Shell : zsh 5.2

Resolution: 1920x1080

WM : Mutter(DeepinGala)

WM Theme : Adwaita

GTK Theme : deepin-dark [GTK2/3]

Icon Theme: flattr

CPU : Intel Core i5-6200U CPU @ 2.8GHz

GPU : Mesa DRI Intel(R) HD Graphics 520 (Skylake GT2)

RAM : 2445MiB / 3854MiB

测试前预热

ab -c 100 -n 100000 "http://easy-php.local/Demo/Index/hello"

测试

预热结束之后,各个框架分别输出"hello world".

本地ab压测:

ab -c 100 -n 10000 domain

Thinkphp 3.2

Benchmarking tp3.local (be patient)

Completed 1000 requests

Completed 2000 requests

Completed 3000 requests

Completed 4000 requests

Completed 5000 requests

Completed 6000 requests

Completed 7000 requests

Completed 8000 requests

Completed 9000 requests

Completed 10000 requests

Finished 10000 requests

Server Software: nginx/1.10.2

Server Hostname: tp3.local

Server Port: 80

Document Path: /

Document Length: 11 bytes

Concurrency Level: 100

Time taken for tests: 4.495 seconds

Complete requests: 10000

Failed requests: 0

Total transferred: 3430000 bytes

HTML transferred: 110000 bytes

Requests per second: 2224.73 [#/sec] (mean)

Time per request: 44.949 [ms] (mean)

Time per request: 0.449 [ms] (mean, across all concurrent requests)

Transfer rate: 745.20 [Kbytes/sec] received

Connection Times (ms)

min mean[+/-sd] median max

Connect: 0 0 0.2 0 3

Processing: 4 45 11.0 41 88

Waiting: 4 45 11.0 41 88

Total: 7 45 11.0 41 88

Percentage of the requests served within a certain time (ms)

50% 41

66% 42

75% 44

80% 45

90% 68

95% 73

98% 77

99% 79

100% 88 (longest request)

Thinkphp 5

Benchmarking tp5.local (be patient)

Completed 1000 requests

Completed 2000 requests

Completed 3000 requests

Completed 4000 requests

Completed 5000 requests

Completed 6000 requests

Completed 7000 requests

Completed 8000 requests

Completed 9000 requests

Completed 10000 requests

Finished 10000 requests

Server Software: nginx/1.10.2

Server Hostname: tp5.local

Server Port: 80

Document Path: /

Document Length: 13 bytes

Concurrency Level: 100

Time taken for tests: 5.570 seconds

Complete requests: 10000

Failed requests: 0

Total transferred: 1570000 bytes

HTML transferred: 130000 bytes

Requests per second: 1795.28 [#/sec] (mean)

Time per request: 55.702 [ms] (mean)

Time per request: 0.557 [ms] (mean, across all concurrent requests)

Transfer rate: 275.25 [Kbytes/sec] received

Connection Times (ms)

min mean[+/-sd] median max

Connect: 0 0 0.4 0 6

Processing: 12 55 9.5 52 96

Waiting: 12 55 9.5 52 96

Total: 18 55 9.4 52 96

Percentage of the requests served within a certain time (ms)

50% 52

66% 54

75% 56

80% 57

90% 71

95% 80

98% 84

99% 87

100% 96 (longest request)

Yii2

Benchmarking yii2.local (be patient)

Completed 1000 requests

Completed 2000 requests

Completed 3000 requests

Completed 4000 requests

Completed 5000 requests

Completed 6000 requests

Completed 7000 requests

Completed 8000 requests

Completed 9000 requests

Completed 10000 requests

Finished 10000 requests

Server Software: nginx/1.10.2

Server Hostname: yii2.local

Server Port: 80

Document Path: /

Document Length: 11 bytes

Concurrency Level: 100

Time taken for tests: 15.307 seconds

Complete requests: 10000

Failed requests: 0

Total transferred: 1480000 bytes

HTML transferred: 110000 bytes

Requests per second: 653.31 [#/sec] (mean)

Time per request: 153.067 [ms] (mean)

Time per request: 1.531 [ms] (mean, across all concurrent requests)

Transfer rate: 94.42 [Kbytes/sec] received

Connection Times (ms)

min mean[+/-sd] median max

Connect: 0 0 0.4 0 4

Processing: 22 152 12.0 151 228

Waiting: 22 152 12.0 151 228

Total: 26 152 11.8 151 228

Percentage of the requests served within a certain time (ms)

50% 151

66% 154

75% 155

80% 157

90% 160

95% 165

98% 182

99% 205

100% 228 (longest request)

Laravel 5.4

Benchmarking laravel.local (be patient)

Completed 1000 requests

Completed 2000 requests

Completed 3000 requests

Completed 4000 requests

Completed 5000 requests

Completed 6000 requests

Completed 7000 requests

Completed 8000 requests

Completed 9000 requests

Completed 10000 requests

Finished 10000 requests

Server Software: nginx/1.10.2

Server Hostname: laravel.local

Server Port: 80

Document Path: /api/test/

Document Length: 18 bytes

Concurrency Level: 100

Time taken for tests: 37.053 seconds

Complete requests: 10000

Failed requests: 0

Non-2xx responses: 10000

Total transferred: 3390000 bytes

HTML transferred: 180000 bytes

Requests per second: 269.88 [#/sec] (mean)

Time per request: 370.535 [ms] (mean)

Time per request: 3.705 [ms] (mean, across all concurrent requests)

Transfer rate: 89.35 [Kbytes/sec] received

Connection Times (ms)

min mean[+/-sd] median max

Connect: 0 0 0.6 0 7

Processing: 16 369 66.9 360 574

Waiting: 16 369 66.9 360 574

Total: 18 369 66.7 360 574

Percentage of the requests served within a certain time (ms)

50% 360

66% 407

75% 426

80% 437

90% 462

95% 477

98% 494

99% 505

100% 574 (longest request)

Lumen

Benchmarking lumen.local (be patient)

Completed 1000 requests

Completed 2000 requests

Completed 3000 requests

Completed 4000 requests

Completed 5000 requests

Completed 6000 requests

Completed 7000 requests

Completed 8000 requests

Completed 9000 requests

Completed 10000 requests

Finished 10000 requests

Server Software: nginx/1.10.2

Server Hostname: lumen.local

Server Port: 80

Document Path: /test

Document Length: 11 bytes

Concurrency Level: 100

Time taken for tests: 7.816 seconds

Complete requests: 10000

Failed requests: 0

Total transferred: 1820000 bytes

HTML transferred: 110000 bytes

Requests per second: 1279.46 [#/sec] (mean)

Time per request: 78.158 [ms] (mean)

Time per request: 0.782 [ms] (mean, across all concurrent requests)

Transfer rate: 227.40 [Kbytes/sec] received

Connection Times (ms)

min mean[+/-sd] median max

Connect: 0 0 0.3 0 5

Processing: 11 78 5.1 77 97

Waiting: 11 78 5.1 77 97

Total: 16 78 4.9 77 97

Percentage of the requests served within a certain time (ms)

50% 77

66% 79

75% 80

80% 81

90% 83

95% 85

98% 87

99% 88

100% 97 (longest request)

Easy PHP

Benchmarking easy-php.local (be patient)

Completed 1000 requests

Completed 2000 requests

Completed 3000 requests

Completed 4000 requests

Completed 5000 requests

Completed 6000 requests

Completed 7000 requests

Completed 8000 requests

Completed 9000 requests

Completed 10000 requests

Finished 10000 requests

Server Software: nginx/1.10.3

Server Hostname: easy-php.local

Server Port: 80

Document Path: /

Document Length: 53 bytes

Concurrency Level: 100

Time taken for tests: 3.259 seconds

Complete requests: 10000

Failed requests: 0

Total transferred: 1970000 bytes

HTML transferred: 530000 bytes

Requests per second: 3068.87 [#/sec] (mean)

Time per request: 32.585 [ms] (mean)

Time per request: 0.326 [ms] (mean, across all concurrent requests)

Transfer rate: 590.40 [Kbytes/sec] received

Connection Times (ms)

min mean[+/-sd] median max

Connect: 0 0 0.3 0 4

Processing: 6 32 4.0 31 68

Waiting: 6 32 4.0 31 68

Total: 8 32 4.0 31 68

Percentage of the requests served within a certain time (ms)

50% 31

66% 32

75% 33

80% 34

90% 39

95% 41

98% 43

99% 46

100% 68 (longest request)

最后

从结果上来看EasyPHP表现不俗,后期会用wrk再测试一下。

以上仅供参考,希望后期不断优化让EasyPHP变得更快更好。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值