- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 5 章 PHP 的缓存与静态化应用
前面已经介绍了许多PHP 应用的例子,这些例子无一例外是通过访问PHP 脚本文件来完成的。用
户每次从浏览器端的访问都是对 PHP 脚本的执行过程,程序根据用户的需要返回信息。对于一些大型
系统,访问量往往很大,频繁的动态操作与数据库操作大大加重了服务器的负担。
在这种情况下,通常使用缓存技术或者静态化操作。也就是将 PHP 脚本的页面结果放到缓存中,
或者放到静态HTML 文件中。这样,访问者在访问页面时,不需要重新执行动态PHP 代码即可获得结
果,大大缓解了服务器的负担。本章将介绍缓存机制与静态化的原理,以及使用 PHP 实现静态化的方
法。
5.1 为什么要静态化
在实际应用中,静态化所得到页面结果与通过直接访问PHP 页面所得到的页面结果一般完全相同。
也就是说,查看静态化后的页面并不会对页面中的内容、布局造成影响。静态化的主要目的就是提高页
面访问的性能。除此之外,将页面静态化可以方便的储存信息,在本地查看页面的时候不需要架设服务
器、数据库等。
那么,静态化对于提高性能有什么好处呢?这里首先介绍一个用于测试性能的工具——Apache
Benchmarking Tool 。该工具是Apache 服务器提供的一个模拟多用户访问的命令行测量工具,通过对访
问地址页面的访问计算出用户的响应时间。Apache Benchmarking Tool 的可执行文件在Apache 的安装目
录下的bin 文件夹,文件名为ab.exe,语法格式如下所示。
ab [options] [http[s]://]hostname[:port]/path
其中,option 指的是参数。常用的参数有以下两种。
-n :执行访问的次数。
-c :同时并发用户的数目。
对于更多的参数信息,可以通过直接执行ab.exe 来获得。
hostname 是主机的地址,port 是端口号,path 是访问路径。
以下代码通过一个循环结构来比较PHP 脚本与HTML 静态页面的性能。
?php
for($i=0;$i100;$i++)
{
echo $i;
}
?
静态HTML 代码如下所示。
01234567891011121314151617181920212223242526272829303132333435363738394041424344454647484
95051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
949596979899
可以看出,这两个文件在浏览器上的输出结果是相同的。然后在命令行上执行 ab 命令分别测试这
·408 · PHP 开发大全
两个页面的性能。测试参数采用对页面访问10000 次,并且有10 个并发用户同时访问。
对于PHP 脚本文件的测试结果如下所示。
C:\apache\binab -n 10000 -c 10 http://localhost/test/test.p
hp
This is ApacheBench, Version 2.0.40-dev $Revision: 1.146 $ apache-2.0
Copyright 1996 Adam Twiss, Zeus Technology Ltd, /
Copyright 1997-2005 The Apache Software Foundation, /
Benchmarking localhost (be patient)
Completed 1000 requests
Completed 2000 requests
Completed 3000 requests
Completed 4000 requests
Completed 5000 requests
文档评论(0)