阅读更多

1顶
3踩

编程语言

翻译新闻 PHP性能优化贴士——产生高度优化代码

2011-07-18 12:16 by 见习记者 lihuapi 评论(0) 有5067人浏览
    PHP是一种在服务器端执行的脚本语言,它开发了世界上许多知名的网站,包括雅虎和Facebook等。下面介绍6条PHP代码、性能优化的技巧。

1.将PHP升级到最新版

    提高性能的最简单的方式是不断升级、更新PHP版本。

2.使用分析器

    网站运行缓慢的原因颇多,Web应用程序极其复杂,让人扑朔迷离。而一种可能性在于PHP代码本身。这个分析器可以帮助你快速找出造成瓶颈的代码,提高网站运行的总体性能。

    Xdebug PHP extension提供了强大的功能,可以用来调试,也可以用来分析代码。方便开发人员直接跟踪脚本的执行,实时查看综合数据。还可以将这个数据导入到可视化的工具 KCachegrind中。

3.检错报告

    PHP支持强大的检错功能,方便你实时检查错误,从比较重要的错误到相对小的运行提示。总共支持13种独立的报告级别,你可以根据这些级别灵活匹配,生成用户自定义的检测报告。

4. 利用PHP的扩展

    一直以来,大家都在抱怨PHP内容太过繁杂,最近几年来开发人员作出了相应的努力,移除了项目中的一些冗余特征。即便如此,可用库以及其它扩展的数量还是很可观。甚至一些开发人员开始考虑实施自己的扩展方案。

5.使用PHP加速器

    一般情况下,PHP脚本被PHP引擎编译后执行,会被转换成机器语言,也称为操作码。如果PHP脚本经过反复编译而得到相同的结果,那为什么不完全跳过编译过程呢?

    通过PHP加速器,你完全可以实现这一点,它缓存了PHP脚本编译后的机器码,允许代码根据要求立即执行,而不经过繁琐的编译过程。

    对PHP开发人员而言,目前提供了两种可用的缓存方案,一种是APC(Alternative PHP Cache,可选PHP缓存),它是一个可以通过PEAR安装的开源加速器。另一种流行的方案是Zend Server,它不仅提供了操作码缓存技术,也提供了相应页面的缓存工具。

6.通过内存缓存来避免高成本操作

   PHP通常在检索和数据分析方面扮演着重要角色,这些操作可能会导致性能降低。实际上有些操作是完全没有必要的,特别是从数据库中反复检索一些常用的静态数据。不妨考虑一下短期使用 Memcached extension来缓存数据。Memcached的扩展缓存与libMemcached库协同工作,在RAM中缓存数据,也允许用户定义缓存的期限,有助于确保用户信息的实时更新。

英文原文:http://www.phpbuilder.com/columns/php-performance-tips/Jason_Gilmore07122011.php3?page=1

  • 大小: 73.3 KB
  • 大小: 45.6 KB
  • 大小: 18.4 KB
  • 大小: 53.1 KB
  • 大小: 44 KB
  • 大小: 44.4 KB
  • 大小: 13.9 KB
  • 大小: 38.3 KB
  • 大小: 33.1 KB
  • 大小: 30.8 KB
  • 大小: 98.4 KB
1
3
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • PHP执行底层机制-zend详解

    今天看到一篇不错的PHP底层运行的文章,里面详细介绍了zend引擎是如何执行php代码的,包括OPcode 、执行OPcode的循环 等内容 我把其中比较重要的信息贴在这里,以飨读者。 ------------------------------------...

  • seo相关文章

    4. 网站优化痕迹明显,常常过度优化。 5. 可能有自己的SEO博客或网站,但原创比例过小,特别关心排名和流量。 估计数量:全国200~300位之间 别被群发堵住了你的思维和视野,虚心很重要。 SEO...

  • 深入理解Zend执行引擎

    https://github.com/fupengfei058/article-collection/blob/master/%E6%B7%B1%E5%85%A5%E7%90%86%E8%A7%A3Zend%E6%89%A7%E8%A1%8C%E5%BC%95%E6%93%8E.mdPHP:一种解释型语言PHP经常会被定义为“脚本语言”或者是...

  • 整理六百篇web前端知识混总

    每个程序员需掌握的20个代码命名小贴士 Java开发者必备的六款工具 10大炫酷的HTML5文字动画特效欣赏 50 个最棒的 jQuery 日历插件,很齐全了! 10款Web程序员必备的CSS工具 WebUploader API 文档详细...

  • 系统设计入门

    通常,提高性能意味着服务于更多的工作单元,另一方面,当数据集增长时,同样也可以处理更大的工作单位。 1 另一个角度来看待性能与可扩展性: 如果你的系统有 性能 问题,对于单个用户来说是缓慢的。 如果...

  • 关于前端基本要求及一些题

    aside:用于表达注记、贴士、侧栏、摘要、插入的引用等作为补充主体的内容。 figure:是对多个元素进行组合并展示的元素,通常与 ficaption 联合使用。 code:表示一段代码块。 dialog:用于表达人与人之间的...

  • 2017前端校招

    aside:用于表达注记、贴士、侧栏、摘要、插入的引用等作为补充主体的内容。 figure:是对多个元素进行组合并展示的元素,通常与 ficaption 联合使用。 code:表示一段代码块。 dialog:用于表达人与人之间...

  • Bootstrap 一篇就够 快速入门&使用(中文文档)

    目录 一、Bootstrap简介 什么是 Bootstrap? 历史 为什么使用 Bootstrap?...Bootstrap 源代码 HTML 模板 实例 实例 实例 Staticfile CDN 推荐 三、关于Boostrap的中文文档 布局 Container..

  • 牛客网-精华专题-前端校招面试题目合集

    1)分类一:标准模式(浏览器按W3C标准解析执行代码)/怪异模式(兼容老页面,使用浏览器自己的方法解析执行代码)/近标准模式(除了针对除空白文本外无其他内容的块级元素的高度上有所不同外,与标准模式保持一致)...

  • 常用的sql函数

    产生的新日期。参数 “datepart” 取值如下: 5 、 DATEDIFF() DATEDIFF ( , , ) 返回两个指定日期在 datepart 方面的不同之处,即 date2 超过 date1 的差距值,其结果值是一个带有正负号的整数值。...

  • 电脑小问题不求人

    打开软驱查看一下机械部分,重点是磁头加载结构,发现磁盘与磁头产生相对滑动,造成磁头定位不准,并且发出噪声,进而发现调节磁头与磁盘间距的螺丝松动,反复调整螺丝位置,使磁头与盘片间距适中即可。  现象...

  • 技术运维-机房巡检表及巡检说明

    技术运维-机房巡检表及巡检说明

  • 第四次算法分析与设计整理

    第四次算法分析与设计整理

  • 图像处理_U2Net_优化模型大小_工程化部署方案_1741785598.zip

    图像处理项目实战

  • jaxlib-0.4.18-cp311-cp311-macosx_11_0_arm64.whl

    该资源为jaxlib-0.4.18-cp311-cp311-macosx_11_0_arm64.whl,欢迎下载使用哦!

  • 视频点播系统完美版源码前后端分离开源版.zip

    搭建说明. 运行环境 php5.6 mysql5.6 扩展sg11 前置条件: 前后端分离,需要准备两个域名,一个后台域名,一个前端域名 后端源码修改(cs2.ijiuwu.com批量替换改为你的后端域名)数据库修改(cs3.ijiuwu.com批量替换为你的前端域名)1、创建后台站点,上传后台源码并解压到根目录2、创建前端站点,上传前端源码并解压到根目录 3、创建数据库上传并导入数据库文件 4、修改数据库信息: 后台:app/database.php 前端:application/database.php 前端站点设置 伪静态thinkphp 运行目录public 关闭防跨站 访问后台域名/admin.php进入后台管理 admin 123456 系统-》系统设置-》附件设置-》Web服务器URL 改为你的前端域名 系统-》清前台缓存 改为你的前端域名 点击刷新缓存

  • 毕业答辩爆款黑板风教育文艺毕业论文答辩通用模板.pptx

    【毕业答辩】爆款黑板风教育文艺毕业论文答辩通用模板.pptx

  • systemd-devel-219-78.el7-9.9.x64-86.rpm.tar.gz

    1、文件内容:systemd-devel-219-78.el7_9.9.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/systemd-devel-219-78.el7_9.9.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、更多资源/技术支持:公众号禅静编程坊

  • win32汇编环境,对 WM-MOUSEMOVE 消息的理解

    win32汇编环境,对 WM-MOUSEMOVE 消息的理解

Global site tag (gtag.js) - Google Analytics