LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 2994|回复: 20

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

[复制链接]
发表于 2006-11-12 04:03:18 | 显示全部楼层 |阅读模式
当一个网站的MYSQL数据量达到几万条以后,速度就开始下降了

有没有好的解决方法?
发表于 2006-11-12 19:00:11 | 显示全部楼层
Post by yanglei1979
当一个网站的MYSQL数据量达到几万条以后,速度就开始下降了

有没有好的解决方法?

具体问题具体分析...
搜索可以通过零时表,
读取数据详情可以用生成静态页面,
总之算法最为重要了。

不过楼主说几万条就导致mysql数据库速度变慢,估计你的系统与程序需要优化或者重建!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-11-13 01:31:22 | 显示全部楼层

用ADODB连接行不行呀

Post by quhan
具体问题具体分析...
搜索可以通过零时表,
读取数据详情可以用生成静态页面,
总之算法最为重要了。

不过楼主说几万条就导致mysql数据库速度变慢,估计你的系统与程序需要优化或者重建!



我见过有些人是用ADODB来连接MYSQL数据库的,而不是用PHP的函数来读取MYSQL数据库,这样是不是速度快些呀
回复 支持 反对

使用道具 举报

发表于 2006-11-13 13:49:50 | 显示全部楼层
我的回答是:不知道
原因是我没有尝试过。

但根据个人见解,有以下意见供参考:
1,php和mysql都在*nix下发挥最大效果,adodb则是win32用来访问数据库的类(我初中时候学asp,就是用它连access和mssqlserver的),不过在win32下可以考虑odbc,相对于使用adodb类而言,确实能提高数据库的访问速度(用asp测试access,尤其是在数据量较大的情况下),但是数据库各异,脚本各异,asp的情况不能等同于php,access的情况不能等同于mysql,所以不能保证odbc的效果。
2,我敢非常肯定地告诉楼主,mysql在操作一张几十万数据量的表,是绝对没有吃力感觉的,我曾用mysql记录com,net,org的whois情况,数据量高达数百近千万,丝毫没有任何吃力,我也曾用mysql记录新中国成立以来全部成文法律规章制度,包括各省的行政规章,总数近14万条,搜索速度毫不逊色。这些都是我的切身体会,且有据可考!因此,我还是建议楼主仔细研究一下自己的机器配置(我指软件,硬件应该不会有很大问题)上,是否有什么问题,比如开了过多长时间消耗cpu的进程。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-11-15 01:07:45 | 显示全部楼层

发现这个论坛上人的水平还蛮高的

Post by quhan
我的回答是:不知道
原因是我没有尝试过。

但根据个人见解,有以下意见供参考:
1,php和mysql都在*nix下发挥最大效果,adodb则是win32用来访问数据库的类(我初中时候学asp,就是用它连access和mssqlserver的),不过在win32下可以考虑odbc,相对于使用adodb类而言,确实能提高数据库的访问速度(用asp测试access,尤其是在数据量较大的情况下),但是数据库各异,脚本各异,asp的情况不能等同于php,access的情况不能等同于mysql,所以不能保证odbc的效果。
2,我敢非常肯定地告诉楼主,mysql在操作一张几十万数据量的表,是绝对没有吃力感觉的,我曾用mysql记录com,net,org的whois情况,数据量高达数百近千万,丝毫没有任何吃力,我也曾用mysql记录新中国成立以来全部成文法律规章制度,包括各省的行政规章,总数近14万条,搜索速度毫不逊色。这些都是我的切身体会,且有据可考!因此,我还是建议楼主仔细研究一下自己的机器配置(我指软件,硬件应该不会有很大问题)上,是否有什么问题,比如开了过多长时间消耗cpu的进程。




虽然PHP版块上人不是很多,但水准还是挺高的.是不是高手都喜欢到这里呀
回复 支持 反对

使用道具 举报

发表于 2006-11-16 11:02:27 | 显示全部楼层
ADODB不是ADO^_&
使用ADODB不会提高连接速度和执行效率,关于这方面的测试可以参考我和NBXMEIDA的测试报告。
连接地址:
http://linuxsir.cn/bbs/showthread.php?t=211893
ADODB的开发目标是建立一个通用数据接口,有点象ODBC的概念^_^
数据量如果只有几万性能急剧下降可能是你的数据结构设计有问题或算法有问题。
回复 支持 反对

使用道具 举报

发表于 2006-11-17 11:01:45 | 显示全部楼层
个人感觉吧,如果一个数据量大就会变慢的程序,应该先从数据库结构检查开始,数据类定是不是定义不好,有没有建立索引等等;
其次,就是程序的算法效率.
最后才是服务器的运行速度问题.



网站用adodb是为了快速"开发"而不是为了快速运行的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-11-19 19:21:44 | 显示全部楼层

关于网页的并发问题

我现在做一个实时显示分数的评分系统,

是通过iframe来做的,也就是别人加分或减分的时候,用ifame嵌套一个程序来处理,

如果一页有20个评分项目的话,就要包嵌套20个iframe ,请问这样做好不好呢?会不会打开并发数太多,而造成服务器的运行不正常?

如果不这样做的话,还有没有其他更好的方法??
回复 支持 反对

使用道具 举报

发表于 2006-11-19 22:07:17 | 显示全部楼层
可以考虑使用ajax
回复 支持 反对

使用道具 举报

发表于 2006-11-20 09:39:22 | 显示全部楼层
Post by yanglei1979
我现在做一个实时显示分数的评分系统,

是通过iframe来做的,也就是别人加分或减分的时候,用ifame嵌套一个程序来处理,

如果一页有20个评分项目的话,就要包嵌套20个iframe ,请问这样做好不好呢?会不会打开并发数太多,而造成服务器的运行不正常?

如果不这样做的话,还有没有其他更好的方法??


推荐两个简单的,xajax或者Pear的HTML_AJAX
回复 支持 反对

使用道具 举报

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

本版积分规则

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