PHP是一种HTML内嵌式的在香港服务器服务( http://www.VeVb.com/hkzy)或香港服务器托管( http://www.VeVb.com/hktg)端执行的脚本语言,所以大部分PHP开发出来的Web应用,初始的开发模板就是混合层的数据编程。虽然通过MVC设计模式可以把程序应用逻辑与网页呈现逻辑强制性分离,但也只是将应用程序的输入、处理和输出分开,网页呈现逻辑(视图)还会有HTML代码和PHP程序强耦合在一起。
PHP引擎作为流行的 Web 编程语言, PHP 的最大优势就是速度。 PHP4 已在这方面做的很好了,您几乎很难找到比他更快的脚本编程语言了。但是假如您的应用负荷很大,而带宽又比较小,或有其他的瓶颈影响您的香港服务器服务或香港服务器托管性能,让您的PHP引擎全速运转的三个简单绝招。
一、香港服务器服务或香港服务器托管代码优化
一谈到代码优化,或许您想到的就是整齐明了的代码,但是本文的意思却不是在此,因为假如要寻求速度的话,就要对PHP 源码作相应的调整。一般说来就是去掉多余的注释,让代码不可读。但是这对于一个具备良好素养的程式员来说,简直就是不可思议的。好在Zend Technologies 公司发布了 Zend 优化引擎能够帮助您做到这一点。他现在是免费的,但是您必须遵循 Zend Optimizer 许可。这个产品能够对引擎产生的中间代码进行优化。
安装这个引擎比较简单,下载对应平台的版本以后,解开压缩文档,然后在 php.ini 文档里面加上下面两行,重新启动 Web 服务器,就搞定了。
以下为引用的内容:
zend_optimizer.optimization_level=15
zend_extension="/path/to/ZendOptimizer.so"
zend_loader.enable=Off
假如是 Win32 平台的话就应该是:
zend_optimizer.optimization_level=15
zend_extension_ts="C://path//to//ZendOptimizer.dll"
zend_loader.enable=Off
需要注意的是,关掉的前提条件是您没有在使用 Zend 加密程式。
二、香港服务器服务或香港服务器托管Web 内容压缩
对于日益拥挤的网络来说,节约带宽就像节约用水相同是十分值得提倡的。根据IETF 标准,大多数浏览器应该支持使用 gzip 压缩的内容。也就是说您能够把用 gzip 压缩的内容发送给浏览器,浏览器会透明的解压数据。
mod_gzip 是 Remote Communications 公司推出的免费 Apache 模块,能把静态的Web 内容压缩后发送给浏览器。对于大多数静态网页来说,这个模块十分合适。尽管
Remotecommunications 公司的人说这个模块支持任何那些 mod_php, mod_perl,mod 什么产生的动态内容,但是看起来还是不能工作,从 mod_gzip 的邮件列表来看,这个问题估计要到1.3.14.6f 才能解决。
假如要压缩动态内容的话,我们能够采用class.gzip_encode.php,一个在脚本开始和结束时使用的 PHP 类。对整个网站来说就是在 php.ini 的 auto_prepend 和 auto_append 中调用其中的函数。周详您能够阅读这个类的程式,这个程式注释得很好,作者几乎把什么都告诉您了。但是使用之前,您的 PHP 要编译为支持 zlib。
对于 PHP 4.0.4 来说,一个新的解决方案就是使用 ob_gzhandler,能达到和上面的类相同的效果,只要简单的在 php.ini 加入下面这句话就能够了:
output_handler = ob_gzhandler ;
这能让 PHP 激活输出缓冲,并压缩任何输出。假如有什么特别的理由不想让任何的内容都压缩输出的话,能够采用在 .htaccess 文档中加入下面的行,对对应目录下的文档进行压缩。
php_value output_handler ob_gzhandler
也能够直接在 PHP 代码中加入:
ob_start("ob_gzhandler");
这项压缩技术十分有效,但是对 Netscape Communicator 用户来说,因为不能压缩图像文档,所以看上去没有完整的发送,因此必须关闭对 jpeg 和 gif 文档的压缩,IE 没有这个问题。
三、香港服务器服务或香港服务器托管管缓冲
假如想要更进一步提升速度,我们就需要考虑采用缓冲技术了。有一些可选的解决方案,包括 Zend Cache (测试版本), APC, 连同 Afterburner Cache,另外更有 jpCache 等。
以上这些都是属于缓冲模块,他们把第一次对 .php 文档请求产生的中间代码存储在 Web 服务器的内存中,然后对以后的请求返回“编译好”的版本。因为这样减少了磁盘读写,而且都在内存工作,所以这个过程能显著提升应用性能,
现成的这类产品比较多,到底选择谁呢?
Zend Cache 是一款不错的商业产品,在第一次加载那些很大的 PHP 页面后,您会明显感受到速度的提升,服务器会留出更多的资源。可惜这个产品是要花银子的,但是在有些情形下,您可不要吝啬这些银子。
Afterburner Cache 是 Bware Technologies 的产品,现在还处于 Beta 版本,看起来似乎和 Zend Cashe 相同,但是他不能达到 Zend Cache 那样好的效果,也不能和 Zend 优化引擎一起工作,但是他是免费的,所以我采用了这个模块。
APC (Alternative PHP Cache) 是 Community Connect 发布的又一个免费模块,看起来似乎能够用于生产环境了。
总之,香港服务器服务或香港服务器托管PHP引擎全速运转方案好用但是需要注意的是:
1. 不要低估内容压缩,在您 100 Mb 的内部网上面看到 PHP 应用的速度提升时,不要忘记使用调制解调器的用户在哪里埋怨您的 100Kb 的 HTML 页面。
2.PHP 可能不是导致瓶颈的原因,仔细检查其他原因(例如:数据库)
3. 您不可能把服务器性能调节到最高状态。因此在埋怨 PHP 及其缓冲之前,考虑是否该升级服务器了,或采用动态负载平衡技术。