Blitz和Smarty的性能比较

今天闲出P了,用一台破电脑做了个测试,关于Blitz和Smarty的

因为一直不太满意Smarty缓慢的解析过程,而又垂涎于Blitz那号称超越php include的性能

so,自己做个测试,当然是参照Blitz官方的,只不过我没翻出那么多各种各样的模板引擎

只比较了纯的HTML,PHP原生代码,PHP使用include,Smarty和Blitz

简单说下环境配置吧:XP, XAMPP 1.7.4,因为这个里面的PHP是5.3版本的,而且我下载的Blitz扩展也是5.3版本的

Smarty是在官网上新下的3.0.7,php_blitz.dll是0.6.10

因为只是上述几种东西的相互比较,所以请忽略我这个台式机的低下性能

测试用的代码也很简单,我只贴Blitz和Smarty的吧,PHP原生态的是直接用echo,include文件中的内容也是

这个是tpl内容

<html>
<head><title>{{ $title }}</title></head>
<body>
{{ $body }}
</body>
</html>

这个是Blitz文件的内容

<?php
$T = new Blitz('main.tpl');
$T->set(array('title' => 'test'));
$T->set(array('body' => 'helloworld'));
echo $T->parse();
?>

这个是Smarty文件的内容,其中缓存已经开启

<?php
require('../libs/Smarty.class.php');
$smarty = new Smarty;
$smarty->assign("title","test");
$smarty->assign("body", "helloworld");
$smarty->display('mmmm.tpl');
?>

测试压力就直接用的apache的ab程序: ab -n 5000 -c 30 http://localhost/blitz.php  这样类似的命令

结果上图:

    1.纯HTML输出

纯html的测试结果

    2.PHP原生态输出

PHP原生代码输出

    3.PHP使用include输出

php 使用include包含文件输出

    4.Blitz

Blitz的测试结果

    5.Smarty

Smarty的测试结果

最后是统计的图表:

Blitz和Smarty的性能比较_第1张图片

破电脑性能低下,也没装什么zend platform那么高端的东西,要不效果应该更明显

这次测试也只是说明问题

但是我翻了半天Blitz的源代码也没发现有处理缓存的(要么就是我没找到-_____,- )

看来需要再写段处理缓存的东西加上应该就完美了,只是Smarty的性能也太低了。。。

你可能感兴趣的:(性能,PHP,smarty,Blitz,测评)