目录
怎样提高php运行速度?,提高php运行速度?
首页 php教程 php手册 怎样提高php运行速度?,提高php运行速度?

怎样提高php运行速度?,提高php运行速度?

Jun 13, 2016 am 08:41 AM
运行速度

怎样提高php运行速度?,提高php运行速度?

使用PHP的最大1个优势就是速度快。一般情况下,PHP总是具有足够的速度支持Web内容动态生成,许多时候甚至无法找出比它更快的方法。然而,当面对庞大的访问量、高负荷的应用、有限的带宽,以及其他各种带来性能瓶颈的因素时,就需要考虑怎样提高PHP的性能了。
1、代码优化
代码优化不仅仅是写出干净和清晰的代码,而是对代码进行一定的简化。可以使用Zend Optimizer来自动帮助完成这些繁杂的工作。Zend Optimizer可以从Zend Technologies的网站http://www.zend.com/免费得到,但必须同意它的许可约定,因为它不是以GPL方式发行的。它的原理很简单,即通过检测Zend引擎产生的中间代码,并对它进行优化,从而获得更高的执行速度。
在使用了Zend Optimizer后,复杂的PHP源程序的执行效率马上会得到显著提高,缺点是优化后的代码可读性下降,给代码修改带来困难。
Zend Optimizer的安装方法非常简单,只要根据用户使用的平台,下载相关的预编译版本,把下面2行代码加入到php.ini文件中,重新启动Web 服务器就行了:
zend_optimizer.optimization_level=15
zend_extension=″/path/to/ZendOptimizer.so″
zend_loader.enable=Off
额外增加的第三行代码是可选的,因为禁用zend_loader将会使优化速度更快。需要注意的是,只有在不使用Zend Encoder Runtime的时候,才可以禁用zend_loader。
2、使用缓存
如果PHP程序的规模很大,那么提高速度的办法就是使用缓存。现在已经有许多缓存方案可供选择,其中包括Zend Cache、APC和Afterburner Cache。
上面这几种都是“缓存模块”(caching modules)。第一次调用PHP文件时,缓存模块从PHP源代码生成一些中间代码,并把这些中间代码存储在Web服务器的内存中。以后再调用这些文件时,就可以直接使用内存中“编译”过的代码。这种方法确实能够改善应用的性能,因为它使得磁盘访问量减低到了最少的程度(代码已经读取和解析),代码直接在内存中运行,使得服务器响应请求的速度大大提高。
当然,缓存模块还会监视PHP源文件的变化,必要时会重新缓存页面,从而防止用户得到的页面仍旧由过时的PHP代码生成。由于缓存模块能够明显地降低服务器的负载,提高PHP应用的响应效率,因此它们非常适合于负载较大的网站使用。
Zend Cache是Zend Technologies公司开发的商业软件。在第一次运行后,PHP页面的运行速度立刻会有很大的提高,服务器的空闲资源也更多了。缺点是它不是免费的,但性价比还是很高的。
Afterburner Cache是Bware Technologies公司开发的免费缓存模块。功能与Zend Cache基本一样,但提高性能方面比不上Zend Cache。
APC(Alternative PHP Cache)是由Community Connect公司开发的另一种免费缓存模块,目前版本是2.0.4,可以从http://pecl.php.net/package/APC获得。对于产品应用来说,它的性能很稳定,而且也能在很大程度上提高响应请求的速度。
3、压缩网页内容
影响站点的访问速度还有1个重要因素,那就是下载速度。解决的办法就是压缩网页内容。对于纯文本内容而言,HTTP压缩技术可压缩至原大小的40%以下,从而提供60%以上的数据传输节约。虽然Web服务器会因为压缩导致CPU占用的略微上升,但可以节约大量用于传输的网络IO。
根据IETF规范,大部分浏览器都支持使用gzip压缩算法进行内容压缩。也就是说,可以先用gzip压缩网页内容,然后发送到客户端浏览器,浏览器在接收的时候会自动解压数据,再显示页面。这个过程对用户来说,是完全透明的。同样,压缩Web页面的内容也有不同的方法。
Mod_gzip是1种开放源代码的、标准的Apache模块,也叫互联网内容加速模块。可以将它和Apache一起编译,也可以作为DSO使用。相对于普通的浏览过程,它可以节省40%左右的流量。Mod_gzip不仅可以压缩静态的内容,如HTML、XML,而且对动态生成的,包括SQL、Java、WML、VRML等产生的内容,在服务器端进行实时压缩并传输,其压缩效率惊人,一般都为60%~85%。
压缩动态网页的内容,还可以使用class.gzip来对.php文件编码,class.gzip通过在PHP脚本的开头和结尾调用它的一些函数来压缩网页内容。如果整个站点都需要这样的压缩,可以在php.ini文件中的auto_prepend和auto_append中调用这些函数,但是会占用一定的系统开销。
PHP4.0.4推出了1种新的输出缓冲的处理手段—ob_gzhandler,它的作用和class.gzip完全一样,区别是可以直接把它加到php.ini 文件中,语法如下:
output_handler = ob_gzhandler;
这样将激活PHP的输出缓冲功能,并在发送内容前进行压缩。如果不想在这里设置,只在需要的地方才改变这个默认设置(不压缩),只要在需要压缩的PHP源程序目录中,修改一下.htaccess文件就行了,语法如下:
php_value output_handler ob_gzhandler
或者直接在PHP代码中调用它:
ob_start("ob_gzhandler");
输出缓冲的效果确实很理想,并且不会为服务器带来额外的系统开销。要注意的一点是Netscape Communicator不支持图像的压缩。因此除非知道访问者都使用Internet Explorer,否则必须禁止压缩jpeg和gif图象。
4 其它技巧
在编程时,使用一些小技巧也可以加快PHP的运行速度:
(1)用i+=1代替i=i+1,既符合c/c++的习惯,效率相对还更高。
(2)尽可能使用PHP内部函数。
(3)能使用单引号字符串时,尽量使用单引号字符串。单引号字符串的效率要高于双引号字符串。
(4)用foreach代替while遍历数组,foreach的效率明显高于while循环,而且不需要调用reset函数。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它们
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

为什么C代码比Python的运行速度更快? 为什么C代码比Python的运行速度更快? Sep 11, 2023 pm 12:45 PM

在本文中,我们将了解为什么C语言代码运行速度比Python更快。GuidoVanRossum开发了Python,这是最著名的编程语言之一。Python因其清晰的语法和简单的代码而受到开发人员的欢迎,即使对于新手来说也是如此。学习Python对于那些刚刚开始编程职业生涯的人来说是非常有利的。他们可以使用Python编程培训、博客、视频、模块和数千种其他资源来了解这种流行语言的各个方面。完成后,您将能够进行现代开发活动,例如GUI开发、网页设计、系统管理、复杂的金融交易或计算、数据科学、可视化等等。

win10系统如何调整虚拟内存提高运行速度 win10系统如何调整虚拟内存提高运行速度 Jul 01, 2023 pm 02:01 PM

  win10系统如何调整虚拟内存提高运行速度?随着电脑的使用率越来越高,我们有时候可能会遇到对win10系统调整虚拟内存提高运行速度进行设置,如果我们需要对win10系统调整虚拟内存提高运行速度进行设置时,要怎么处理win10系统调整虚拟内存提高运行速度呢?  win10系统调整虚拟内存提高运行速度的修复方案  1.点击开始菜单–所有应用–Windows系统–这台电脑,右键这台电脑,点击选择“属性”进入下一步操作。  2.在打开的系统窗口中,点击左侧的“高级系统设置”进入下一步操作。  3.在

提升win7运行速度的简易指南 提升win7运行速度的简易指南 Dec 26, 2023 pm 06:57 PM

我们在使用win7系统的时候,可能会感觉系统运行卡顿或者不流畅,这时候我们可以在系统高级设置中进行优化,关闭不需要的动画和服务,从而提高win7运行速度,下面就一起来看一下优化方法吧。win7运行速度优化教程1、首先找到计算机,打开“属性”2、找到“高级系统设置”3、点击性能下的“设置”4、勾选“自定义”,取消勾选不需要的内容,或者全部取消勾选。5、或者在上方勾选“调整为最佳性能”

优化Linux系统提升速度 优化Linux系统提升速度 Jun 30, 2023 am 11:00 AM

如何解决Linux系统中出现的系统运行速度过慢问题随着Linux操作系统的广泛应用,许多用户反映在使用过程中会出现系统运行速度过慢的问题。这种问题不仅影响工作效率,还会降低使用者对Linux系统的体验。因此,解决Linux系统运行速度过慢问题的方法是非常重要的。本文将介绍一些常见的解决方案,帮助用户改善系统的运行速度,并提高整体使用体验。清理无用的临时文件和

影响计算机运行速度的主要因素是什么 影响计算机运行速度的主要因素是什么 Dec 07, 2020 am 10:45 AM

影响计算机运行速度的主要因素是中央处理器的主频和存储器的存取周期,主频就是CPU的时钟频率,计算机的操作在时钟信号的控制下分布执行,每个时钟信号周期完成一步操作,主频的高低在很大程度上反映了CPU速度的快慢。

了解Go语言在编程语言发展中的地位 了解Go语言在编程语言发展中的地位 Mar 29, 2024 pm 04:36 PM

标题:探索Go语言在编程语言发展中的地位随着信息技术的蓬勃发展,编程语言作为程序员与计算机沟通交流的工具,扮演着至关重要的角色。在众多编程语言中,Go(又称Golang)作为一门相对年轻的编程语言,受到了广泛关注。本文将从历史渊源、特点以及具体代码示例等方面,探讨Go语言在编程语言发展中的地位。一、Go语言的历史与背景Go语言诞生于2007年,由Google

优化Linux系统运行速度的方法 优化Linux系统运行速度的方法 Jun 30, 2023 am 10:25 AM

如何应对Linux系统中的系统运行速度缓慢问题在使用Linux系统的过程中,有时我们会遇到系统运行速度变慢的问题。这不仅会影响我们的工作效率,还可能使系统不稳定。那么,如何应对Linux系统中的系统运行速度缓慢问题呢?下面将介绍一些常见的解决方法和优化策略。清除临时文件和缓存Linux系统中的临时文件和缓存可以占据大量的硬盘空间,并拖慢系统的运行速度。我们可

Go是否具备典型的编程语言特征? Go是否具备典型的编程语言特征? Mar 28, 2024 pm 03:32 PM

Go语言作为一种旨在解决并发、性能和规模问题的编程语言,在设计上兼具了许多典型编程语言的特征。本文将从几个典型编程语言特征的角度来分析Go语言的特点,并附带相应的代码示例。一、静态类型静态类型是指编程语言要求在编译时就确定变量的类型,Go语言也是一种静态类型的语言。下面是一个示例代码,展示了Go语言中的静态类型声明:packagemainimport

See all articles