5

Yaf 2.1性能测试(Yaf 2.1 Benchmark)

 3 years ago
source link: https://www.laruence.com/2011/12/02/2333.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Yaf 2.1性能测试(Yaf 2.1 Benchmark)

Thanks to Ruilog agian for his work of second benchmark of Yaf 2.1.
Yaf 2.1 (github, manual) did a lot of work to improve performance and reduce memory usage, so let's take a look at the result(Yaf 2.1重写了很多逻辑来提升性能, 并且降低内存使用率, 改进结果见测试对比):
First of all, I have to say, I am not saying the fastest is the best. every framework list blew is outstanding, and has particular situation to deploy. (首先, 我要申明, 不一定最快的就是最好的, 下面的每一个框架都是优秀的框架, 都有它们适用的场景)
Case

Test Simple "Hello World" page output, Simple MVC logic(Router -> Controller -> Viewer), No Database Connections, No complex logic. Test scripts can be found here.

Hardware platform

  • CPU: Intel Core i5 750 (2.67GHz x4)
  • RAM: 4GB

Software Environment

  • Debian 6.0.3 x86_64 (2.6.32-39)
  • apache 2.2.16 (mpm-prefork,mod-php5)
  • php 5.3.8
  • php-apc 3.1.9 (Optimization for include/require)
  • Copy all projects to /dev/shm/* (Optimization for files read/write)

1. Apache Benchmark

Requests pre second (-c 100 -n 30000), the bigger is better

ab -c100 -n30000
Requests pre second (-c 200 -n 50000), the bigger is better
ab -c200 -n50000

2. System LoadAvg

System LoadAvg in 1 Minute when Apache Benchmark Complete, the smaller is better (-c 100 -n 30000)

System loadavg

3. Memory usage

How many memory usage in one "hello world" page. the smaller is better.

Memory usage

4. Response time

The time of page request to response.

Response time

5.Number of function calls (Facebook XHProf)

The number of functions calls in one "hello world" page.

Number of function calls

6. Number of included files

The number of files included or required in one "hello world" page. the fewer is better.

Number of included files
Changelog:
  * v20111201 @2011-12-01
    - release
  * v20111201-2 @2011-12-05
    - bugfix: Fix a stupid logic error in bench.php
    - bugfix: Symfony2, Change running mode from 'dev' to 'prod'

--EOF--
For more details, plz refer to: http://www.ruilog.com/blog/view/b6f0e42cf705.html


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK