Heim  >  Artikel  >  Backend-Entwicklung  >  基于什么样的理由PHP比其它CGI好呢?_PHP

基于什么样的理由PHP比其它CGI好呢?_PHP

WBOY
WBOYOriginal
2016-06-01 12:38:29812Durchsuche

Q:基于什么样的理由 PHP 比其它 CGI 好呢?有没有比较具体的数据可以证明 PHP 执行与其它 CGI 执行的效率好 ? 现在我的公司是用 C 来写 CGI 的,如果换成 PHP,会不会比较好呢 ?没有强而有力的依据的话,我就没办法说服上面的人让我转成 PHP 了...

A:
我认为"好" 要有三点
第一: 写出来的程式的执行速度快.
第二: 遇到有大量存取时的执行效能强.
第三: 程式开发的时间快,易维护。
php在这三点中,虽都不一定是最好的,但也都在前茅

以下是C,PHP和Perl在速度方面的比较
我用下面的算式测试
$s=1.0;
for ($i=1;$ifor ($j=1;$j$s=$s*1.0005;
$s=$s/1.0004;
};
};
print $s;
?>
然后用ab -n 10000 -c 20 http://mycgi
测试,结果
C语言用了 37.511 秒
PHP3用了 45.393 秒
PERL用了 68.418 秒

看起是C 最快没错,不过,和PHP3的结果没有太大
的差距。
Perl最慢

以下为测试数据
==============================================
C 语言
==============================================

Document Path: /~evan/test/gcc.cgi
Document Length: 19 bytes

Concurrency Level: 20
Time taken for tests: 37.511 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 1750000 bytes
HTML transferred: 190000 bytes
Requests per second: 266.59
Transfer rate: 46.65 kb/s received

Connnection Times (ms)
min avg max
Connect: 0 30 3001
Processing: 4 40 69
Total: 4 70 3070

PHP3
==============================================
Document Path: /~evan/test/php3.php3
Document Length: 15 bytes

Concurrency Level: 20
Time taken for tests: 45.393 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 1710000 bytes
HTML transferred: 150000 bytes
Requests per second: 220.30
Transfer rate: 37.67 kb/s received

Connnection Times (ms)
min avg max
Connect: 0 34 3039
Processing: 6 53 183
Total: 6 87 3222


PERL
==============================================
Document Path: /~evan/test/perl.cgi
Document Length: 17 bytes

Concurrency Level: 20
Time taken for tests: 68.418 seconds
Complete requests: 10000
Failed requests: 0
Total transferred: 1730173 bytes
HTML transferred: 170017 bytes
Requests per second: 146.16
Transfer rate: 25.29 kb/s received

Connnection Times (ms)
min avg max
Connect: 0 22 3005
Processing: 9 112 323
Total: 9 134 3328

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn