Discuz!官方免费开源建站系统

 找回密码
 立即注册
搜索

[汗]看看争车位这要命的查询 80 queries

[复制链接]
Discuz8.0 发表于 2009-12-12 22:40:56 | 显示全部楼层 |阅读模式
Processed in 1.824 second(s), 80 queries

近几天,发现服务器经常无响应,但是过一阵就好了,费了好大劲,在后台监控中看到这么个查询语句:

SELECT *,(select sum(c.carprice) from uchome_park_carinfo c,uchome_park_mycar m where c.carid=m.carid and  m.uid=p.uid group by m.uid) as carprice,(select count(*) from uchome_park_mycar where uid=s.uid) as carnum  FROM uchome_space s ,uchome_park_member p..(省略若干)

然后搜索程序,在park_rank.php中,36行找到如下语句,看来很是让人汗:

$query = $_SGLOBAL['db']->query("SELECT *,(select sum(c.carprice) from ".tname('park_carinfo')." c,".tname('park_mycar')." m where c.carid=m.carid and  m.uid=p.uid group by m.uid) as carprice,(select count(*) from ".tname('park_mycar')." where uid=s.uid) as carnum  FROM ".tname('space')." s ,".tname('park_member')." p WHERE s.uid=p.uid ".$wheresql.$ordersql." LIMIT $start,$perpage");

就这么个查询法,服务器不挂都不行...

所有的mysql进程都在等此进程,简直就是几分钟之内所有的mysql进程都处于lock状态等待其执行完毕,如果同时使用此查询的人多了,简直要老命了....

试问,能不能优化一点/能不能考虑用户服务器承受能力???

目前懒的研究优化,将其暂时注释掉去掉排行功能,省的服务器老是挂......
liuzhly 发表于 2009-12-8 13:29
回复

使用道具 举报

dybb 发表于 2009-12-12 22:43:38 | 显示全部楼层
给个地址看看。
回复

使用道具 举报

 楼主| Discuz8.0 发表于 2009-12-13 23:15:47 | 显示全部楼层
"争车位"怎么打不开了?
本帖最后由 liulv 于 2009-12-13 12:55 编辑
https://discuz.dismall.com/viewth ... =%D5%F9%B3%B5%CE%BB
"争车位"怎么打不开了?
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-9-17 02:30 , Processed in 0.099058 second(s), 14 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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