为什么网站同时访问人数一多网速就会超级慢?

viphk 2010-12-28 09:40:10
在一个特定的时间段内,(如在规定的时间点举行活动)网站同时访问人数一多网速就会超级慢,慢得跟卡死了一样,要过半个小时左右才能恢复,数据库连接访问后都已关闭了的,也显式的回收了资源,而服务器上同样的程序,人数少的站点不会卡,能正常访问,这是怎么回事呢?请有经验的前辈们多指点,谢谢!
...全文
1057 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
子夜__ 2011-01-25
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 viphk 的回复:]

一般怎么优化SQL
[/Quote]

SQL优化
chen_ya_ping 2011-01-25
  • 打赏
  • 举报
回复
[Quote=引用楼主 viphk 的回复:]
在一个特定的时间段内,(如在规定的时间点举行活动)网站同时访问人数一多网速就会超级慢,慢得跟卡死了一样,要过半个小时左右才能恢复,数据库连接访问后都已关闭了的,也显式的回收了资源,而服务器上同样的程序,人数少的站点不会卡,能正常访问,这是怎么回事呢?请有经验的前辈们多指点,谢谢!
[/Quote]
如果select操作很多,那可以可以考虑缓存,还有你的数据库尽量用存储过程来操作(因为存储过程可以缓存),多次执行速度有保障,还有就是加索引,尽量的减少数据库的操作次数,能一次取出的数据就一次取出,不要分多次取出。对于分页,一次就取出要的数据,不要一次性取出全部。少用datareader,多用dataset。数据库中不要用到游标什么的,速度慢,可以用其他的方式来替代。
对于有lock的地方,看看要及时的释放。
还有就是viewstate这个,有些不需要的,就禁用,GridView才生的ViewState在页面上也是相当的恐怖。
能在客户端解决的事情,就不要到服务器端再解决。还有就是 合理的使用AJAX。
或则直接的方法就是给你的硬件升级升级。
luyuwei2008 2011-01-25
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 viphk 的回复:]
一般怎么优化SQL
[/Quote]
百度。。。
自然框架 2011-01-25
  • 打赏
  • 举报
回复
估计是锁表了,一些SQL语句都会进行锁表,他在执行的时候,会锁定涉及到的表,这是其他的就不能操作这个表的,必须等待解锁。

如果某个锁表的操作比较耗时,那么就会造成等待,这个时候就会很慢,如果照成连环的形式,一个锁一个,那就更悲剧了。

可以用企业管理器,开查看一下是否有锁表的情况。

在 管理->当前活动 ,里面可以看到是否有锁表(堵塞)的情况。
changbanpo 2011-01-25
  • 打赏
  • 举报
回复
见议在缓存和sql优化方面做功夫
viphk 2011-01-25
  • 打赏
  • 举报
回复
好的,谢谢大家的指导
viphk 2011-01-24
  • 打赏
  • 举报
回复
一般怎么优化SQL
xiaotang_hb 2010-12-28
  • 打赏
  • 举报
回复
缓存啊 懒加载啊 当然sql优化是个大问题哦
rczjp 2010-12-28
  • 打赏
  • 举报
回复
嗯 不需要频繁更新就缓存
最主要的应该是SQL优化的问题把
  • 打赏
  • 举报
回复
举行活动,如果只是浏览,利用缓存基本就可以很好地解决,对于比较频繁的“提交”
还是要适当代码优化,重点是数据库操作方面的优化,这个涉及的面比较多,充分利用主键、外键、适当的索引,甚至全文索引、表分区。查询时只取某一页的数据。。。
压力测试
  • 打赏
  • 举报
回复
另外,假设你对一些持久数据还不善于进行数据缓存处理,而是读取数据库,那么对于不需要保证数据绝对一致性的查询,应该使用(以SQL Server为例)“with(nolock)”方式来查询。
  • 打赏
  • 举报
回复
滥用Session集合保存数据,比较容易产生这类“人数多一点就崩溃”的问题。
wuyq11 2010-12-28
  • 打赏
  • 举报
回复
WAS等压力测试,资源是否及时释放,编码问题
bourbon1795 2010-12-28
  • 打赏
  • 举报
回复
网页用缓存没?

62,241

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧