background image

浅谈

PHP 缓存技术之三

php  

应用程序的性能优化

使用

PHP 编程的最大好处是学习这种编程语言非常容易以及其丰富的 库。即使对需要使用

的函数不是十分了解,我们也能够猜测出如何完成一个特定的任务。
尽管

PHP 非常简单易学,但我们仍然需要花费一点时  间来学习 PHP 的一些编程技巧,尤

其是与性能和内存占用相关的技巧。在

PHP 中,有许多小技巧能够使我们减少内存的占用,

并提高应用程序的性能。在本篇文

 章中,我们将对 PHP 应用程序的分析、如何改变脚本代码

以及比较优化前后的各种参数值进行简要的介绍。
通过在程序中设置计时的程序,并反复执行这些代码,我们可以获得有关程序执行速度的
一组数据,这些数据可以可以用来发现程序中的瓶颈,以及如何进行

 优化,提高应用程序

的性能。
也许读者曾经听说过

PEAR 库吧。我们将使用 PEAR 库创建在分析时需要使用的例子,这也

是对现有的代码进行分析的最简单的方法,它使我们无需使用

 商用产品就能对代码进行分

析。
我们要使用的库的名字是

PEAR::Benchmark,它对于对代码进行分析和性能测试非常有用。

这个

 库提供一个名字为 Benchmark_Timer()的类,能够记录一个函数调用和下一个函数调

用之间的时间。在对代码的性能进行测试时,我们可以得到一

 个详细的脚本执行结果,它

非常简单,如下所示:
include_once("Benchmark/Timer.php");
$bench = new Benchmark_Timer;
$bench-> start();
$bench-> setMarker('Start of the scr

ip

t');

// 现在处于睡眠状态几分钟
sleep(5);
$bench-> stop();
// 从计时器中获得分析信息

PR

int_r($bench-> getProfiling());

?>  
上面代码执行后的输出如下所示:
Array
(
[0] =>    Array
(
[name] =>    Start
[time] =>    1013214253.05751200
[diff] =>    -
[total] =>    0
)
[1] =>    Array
(
[name] =>    Start of the script
[time] =>    1013214253.05761100
[diff] =>    9.8943710327148E-05
[total] =>    9.8943710327148E-05