浏览 7905 次
锁定老帖子 主题:优化php程序
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-09-02
我们拿ZPS来说事,看他能提供什么优化功能:
另外就是细节方面的性能考虑:
另外一些小的优化技巧,我这里就不说了,看下面链接。 40条优化PHP代码的小提示: http://www.huomo.cn/archives/40_tips_for_optimizing_your_php_code.html php效率优化 http://cnhawkwing.iteye.com/blog/69100 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-09-02
左轻候写的几篇PHP反思文章挺不错的:
引用 PHP却完全不是这样。作为一种纯解释型语言,PHP脚本在每次被解释时进行初始化,在解释完毕后终止运行。这种运行是互相独立的,每一次请求都会创建一个单独的进程或线程,来解释相应的页面文件。页面创建的变量和其他对象,都只在当前的页面内部可见,无法跨越页面访问。在终止运行后,页面中申请的、没有被代码显式释放的外部资源,包括内存、数据库连接、文件句柄、Socket连接等,都会被强行释放。
也就是说,PHP无法在语言级别直接访问跨越页面的变量,也无法创建驻留内存的对象。 ...... PHP这种独特的工作模型的优势在于,基本上解决了令人头疼的资源泄漏问题。Web应用的特点是大量的、短时间的并发处理,对各种资源的申请和释放工作非常频繁,很容易导致泄漏。同时,大量的动态html脚本的存在,使得追踪和调试的工作都非常困难。PHP的运行机制,以一种非常简单的方式避免了这个问题,同时也避免了将程序员带入到繁琐的缓冲池和同步等问题中去。在实践中,基于PHP的应用往往比基于Java或.NET的应用更加稳定,不会出现由于某个页面的BUG而导致整个站点崩溃的问题。(相比之下,Java或.NET应用可能因为缓冲池崩溃或其他的非法操作,而导致整个站点崩溃。)后果是,即使 PHP程序员水平不高,也无法写出使整个应用崩溃的代码。PHP脚本可以一次调用极多的资源,从而导致页面执行极为缓慢,但是执行完毕后所有的资源都会被释放,应用仍然不会崩溃。甚至即使执行了一个死循环,也会在30秒(默认时间)后因为超时而中止。从理论上来说,基于PHP的应用是不太可能崩溃的,因为它的运行机制决定它不存在常规的崩溃这个问题。在实践中,很多开发者也认为PHP是最稳定的Web应用。 但是,这种机制的缺点也非常明显。最直接的后果是,PHP在语言级别无法实现跨页面的缓冲机制。 http://www.bloggern.com/1557.html http://www.bloggern.com/3577.html |
|
返回顶楼 | |
发表时间:2008-09-02
引用 但是,这种机制的缺点也非常明显。最直接的后果是,PHP在语言级别无法实现跨页面的缓冲机制。
这句话很扯嘛 |
|
返回顶楼 | |
发表时间:2008-09-02
gigix 写道 引用 但是,这种机制的缺点也非常明显。最直接的后果是,PHP在语言级别无法实现跨页面的缓冲机制。
这句话很扯嘛 ls有什么方法能在语言级别上实现跨页面缓冲? |
|
返回顶楼 | |
发表时间:2008-09-02
xombat 写道 gigix 写道 引用 但是,这种机制的缺点也非常明显。最直接的后果是,PHP在语言级别无法实现跨页面的缓冲机制。
这句话很扯嘛 ls有什么方法能在语言级别上实现跨页面缓冲? 为什么要在语言级别上实现这种明显属于部署架构的事情? |
|
返回顶楼 | |
发表时间:2008-09-04
gigix 写道 xombat 写道 gigix 写道 引用 但是,这种机制的缺点也非常明显。最直接的后果是,PHP在语言级别无法实现跨页面的缓冲机制。
这句话很扯嘛 ls有什么方法能在语言级别上实现跨页面缓冲? 为什么要在语言级别上实现这种明显属于部署架构的事情? 跨页面缓冲可以用APC、XCache啊什么的,如果想跟其他语言挂接,那就用Memcache吧,有什么不能实现的呢?! |
|
返回顶楼 | |
发表时间:2008-09-05
引用 跨页面缓冲可以用APC、XCache啊什么的,如果想跟其他语言挂接,那就用Memcache吧,有什么不能实现的呢?!
注意是语言级别上 |
|
返回顶楼 | |