您的位置:首页 > 运维架构 > 网站架构

网站极限优化之php优化

2012-08-21 18:22 453 查看
这段时间忙死了,早上一大清早就要起来学计算机英语,听商务英语,前些日子搞数据库优化研究已经有了结果,现在就剩下php优化了,当然了,人各有志,只是发表下个人的看法,大家可以踊跃发表自己的意见,一下内容仅供参考,生产部署出了问题,与本人无关



说到网站的建设那是相当的麻烦,不过现在有很多大师提出了很多有建设性的方法,我这里主要是针对mvc 模板引擎来讲,而他们两个东东都是和php有着紧密的联系的,当然了你非要玩jsp,c/c++fast-cgi我就没办法了,本人不懂呵呵,好了废话不说了:

首先我们知道php是解释性语言,和perl,python一样都要一个程序运行的虚拟机来运行,和c c++等编译性的不同他们可以直接系统运行,而且产生的二进制代码更精简高效,可是由于php强大的网络接口,有很多现成的网页操作类,函数可以使用,而且开发速度快,学习也很简单相对其他语言,所以打败了perl,c/c++在网站设计的地位,导致了现在的网页设计三国鼎立 php jsp ruby (asp不考虑windows下的东东不感冒)呵呵。按照简单的程序执行效率来说我们可以大概的总结如下:

无框架直接纯语言搞速度:jsp > php > ruby

使用框架设计后 速度: jsp > ruby on rails > php+thinkphp

所以如果有钱,还是整jsp吧,不过咱们不整就用php那么怎么优化呢。。一般来说php优化主要是靠各种缓存来加速了,像什么apc,zend optimial,xcache等等,可是我看来对于php的加速分为以下几类:

1,直接使用php的ob_start函数等函数进行php程序网页的真静态加速,提高速度的同时还有利于经行SEO,是最快的完整网页缓存加速

2,使用facebook hiphop把php编译成c++程序进行加速。这个嘛哥没有详细整过不过性能算是很好了,比下面的饿apc xcache快,不过部署难度大,建议使用

3,就是使用apc,xcache,来进行php程序的编译opcode缓存,效果很好,是我们常用的加速方法,apc还可以把缓存的文件保存为文件,需要用的时候直接载入,加速又加密了源码呵呵,

4,就是框架,模板引擎的局部缓存了代表是smarty的编译缓存,个人感觉是鸡肋,因为在前面还是需要php文件来载入缓存文件,不过可以实现局部缓存,大家可以借鉴。比如把时间动态显示不缓存呵呵,除此之外还不如直接php整页缓存

最后还有一个优化就是,mvc框架选择问题,还有模板引擎的选择问题,其实以我个人的想法,这些东东最好还是掌握他们的社会分工思路,采用mvc,模板界面设计,逻辑程序设计分离的思想就可以了.

php在框架复杂大规模程序运行效率上面确实不是强项,这个可以查看网上很多关于ruby,php框架的相关文章看到,一起去学一个框架还不如自己学习mvc思想自己纯php设计,或者自己定制一个简单的框架来使用,高效的同时,还能学习好php!


由于社会分工的深入,为了配合方便一个网站的发展,二次开发要求,诞生了视图,界面与php编程分离的状况,是一个好事,研究了几天刚开始考虑smarty这个模板引擎,结果看到很多人抱怨速度不行,就他官方的zend frame框架一样,没有极高的电脑配置,是玩不转的。考虑了很久还是选择Blitz templates 这个模板引擎了,看测试比php纯echo include还要快,,,当然了php自身的include还是很快的,可以参考评测结果。



一下就被吸引了,还是相信c语言的能力了,linux世界的老大。拯救发展linux,bsd就还得靠他。什么java,面向对象都是浮云。。。

当然,php优化除了性能之外还要用户数据的过滤,安全等问题,这里就不讲了,咱们下回分解呵呵
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息