LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: yanglei1979

怎么样才能提高PHP的运行速度

[复制链接]
 楼主| 发表于 2006-11-24 03:08:15 | 显示全部楼层
用AJAX性能就一定比用IFRAME要好吗
回复 支持 反对

使用道具 举报

发表于 2006-11-25 13:13:50 | 显示全部楼层
Post by yanglei1979
用AJAX性能就一定比用IFRAME要好吗


对于客户端来说,可能还要慢一点

对服务器来说,要好一些
回复 支持 反对

使用道具 举报

发表于 2006-11-25 16:47:09 | 显示全部楼层
it looks nicer
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-11-26 04:21:36 | 显示全部楼层

那就用IFRAME吧

Post by nbxmedia
对于客户端来说,可能还要慢一点

对服务器来说,要好一些



既然IFRAME快,那我就还用IFRAME来做吧,网站为什么而存在?不就是为了让客户用吗?

解决问题,用简单的方法并不一定是坏的,用复杂的方法并不一定是好的.

AJAX虽然别人一说就很牛,但不到非用不可的时候,我是不会用的.
回复 支持 反对

使用道具 举报

发表于 2006-11-26 13:09:07 | 显示全部楼层
Post by yanglei1979
既然IFRAME快,那我就还用IFRAME来做吧,网站为什么而存在?不就是为了让客户用吗?

解决问题,用简单的方法并不一定是坏的,用复杂的方法并不一定是好的.

AJAX虽然别人一说就很牛,但不到非用不可的时候,我是不会用的.



其实不然,Iframe的重复刷新和查询很容易让客户端锁死而造成数据堆积,服务器负担大了,最终结果反映到客户还是“慢”。


还有,一般应用下的xmlHttpRequest并不复杂
回复 支持 反对

使用道具 举报

发表于 2006-11-26 13:10:29 | 显示全部楼层
真正的复杂和强力技术,永远只有少数人才可能掌握

ajax,just a kid
回复 支持 反对

使用道具 举报

发表于 2006-11-26 17:29:35 | 显示全部楼层
我来比较一下iframe和ajax
1,单次运行的服务器负担:
iframe要求生成一整块html,ajax要求生成网页变化的数据(一整块xml或html):无法比较;
2,多次运行的服务器负担:
iframe通过自刷新完成数据交替,ajax通过javascript的事件触发完成数据交替:在不使用固定timeout事件来控制ajax交换数据的情况下,使用ajax对服务器负担较轻;
2,客户端负担:
iframe可以是完全的死页面,ajax要求javascript的支持,消耗客户端资源:iframe对客户端负担较轻(问题是运行负担轻微的客户端怎会在乎那么点javascript小程序的资源消耗?)
3,数据不交替情况下的美观程度:
iframe是内嵌页,如果不能很好控制框架大小和iframe内嵌源内容的大小,很有可能造成iframe的内嵌源页面会随鼠标拖动而上下翻滚,ajax则完全与顶层页面融合:ajax较为美观
4,数据交替情况下的美观程度:
iframe是页面跳转,在旧页消逝而新页为完全载入的时候,很有可能内嵌页和顶层页及不融合,ajax则不会给人这种感觉,甚至可以制作loadingbar来使得数据交替过程显得非常美观:ajax较为美观(这是我用他的最主要原因)
5,开发技术:
iframe几乎不需要开发技术,用dw之内的东西都可以制作iframe,ajax则要求对javascript技术有一定的掌握,尤其是xmlhttprequest,timeout,getelementbyid这些常用函数与类:ajax对技术层面要求稍高(但也不是差很多,在这个javascript横行的时代,作网页怎么可能不去学javascript,而学过的就不会对ajax的技术有恐惧感了)(另外,我认为这可能是yanglei选择iframe的主要原因吧?偷笑)
回复 支持 反对

使用道具 举报

发表于 2006-11-27 11:22:51 | 显示全部楼层
ajax和iframe技术本身只是用来减少html代码的通讯量和渲染量的,对http服务器会有所帮助。但对数据库来说,需要的查询还是不能少的。

不过ajax可以把大量结果缓存在客户端,减少重复查询的次数,这一点上,对数据库减压是有帮助的。

对于数据库减压:
一是使用数据库本身的缓存技术,可以对最近的查询结果进行缓存,避免重复运算。
然后是使用像memcached这样的缓存服务器,进一步减少查询数据库的次数。
还有就是可以把数据缓存在本地文件系统里,这样提取更快。

在网站设计上也要充分考虑:取消一些数据的实时更新显示。比如点击量这样的数据应该是定期(比如每一小时)通过log跑出来,再更新到数据库里。不要用户一点击就更新,给数据库造成巨大压力。页面上尽量减少动态数据的显示。甚至100多页的频道导航都是定期生成的静态页。看看流量大的网站的论坛,那个有vbb、discuz做得漂亮、精细的?都是比较简单,充分考虑负载。
回复 支持 反对

使用道具 举报

发表于 2006-11-27 11:24:23 | 显示全部楼层
ajax和iframe技术本身只是用来减少html代码的通讯量和渲染量的,对http服务器会有所帮助。但对数据库来说,需要的查询还是不能少的。

不过ajax可以把大量结果缓存在客户端,减少重复查询的次数,这一点上,对数据库减压是有帮助的。

对于数据库减压:
一是使用数据库本身的缓存技术,可以对最近的查询结果进行缓存,避免重复运算。
然后是使用像memcached这样的缓存服务器,进一步减少查询数据库的次数。
还有就是可以把数据缓存在本地文件系统里,这样提取更快。

在网站设计上也要充分考虑:取消一些数据的实时更新显示。比如点击量这样的数据应该是定期(比如每一小时)通过log跑出来,再更新到数据库里。不要用户一点击就更新,给数据库造成巨大压力。页面上尽量减少动态数据的显示。甚至100多页的频道导航都是定期生成的静态页。看看流量大的网站的论坛,那个有vbb、discuz做得漂亮、精细的?都是比较简单,充分考虑负载。
回复 支持 反对

使用道具 举报

发表于 2006-11-27 13:53:37 | 显示全部楼层
VBB是非常慢的...用过的人都知道
Discuz还可以
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表