广告联盟网

标题: 一个小的改动,降低一半的CPU占用,并大幅提高响应速度 [打印本页]

作者: 2shoushichang    时间: 2007-3-1
标题: 一个小的改动,降低一半的CPU占用,并大幅提高响应速度
我说的这种方式可能不适用于论坛.<br />在我们做的大部分网站中(比如<a href="http://www.ju5u.com" target="_blank">http://www.ju5u.com</a>),很多是用来显示最终内容页(比<a href="http://www.ju5u.com/sale/32626.html" target="_blank">http://www.ju5u.com/sale/32626.html</a>)的,比如大部分的内容站,都是采集或者网友自己发布内容,然后放到数据库中,根据请求来显示.<br />这里面有个提高响应速度的问题.<br />我们知道,一般这种网站的内容页显示需要至少两次数据库请求操作:<br />1.请求数据库中文章内容<br />2.每次请求让访问次数+1(代码:SaleManager.AddViewTimes(iInfoId)<img src="images/smilies/wink.gif" smilieid="4" border="0" alt="" /><br />这里面有个很大的问题,就是,第二步操作一般不是必须的,但是他是最大的资源占用操作.<br />因为一般情况下,读数据库速度是很快的,需要的资源也很少,但是对数据库的写操作就是一个很耗费资源的动作.首先他要请求数据库,找到要修改的行,然后执行写操作,最后还要记录数据库日志.这些也是一个对硬盘写的过程.如果你把访问次数字段设置成个索引,问题就更大了,在某些情况下它会引起占用资源极高的索引重建工作.<br />但是,这个访问次数这么重要吗?我看未必,至少在大部分情况下,和占用的资源比起来,是得不偿失的.<br />我做了个比较,对于一个日请求几万次的很普通的服务器(其实就是一个台式机),在加上访问计数后,sqlserver2005的cpu占用率一般在70%左右,把它去掉,cpu占用率一般在30%左右,很少有占用40%的情况.<br />看来,对于速度的优化,还有很多工作要做啊.
作者: mp3lt    时间: 2007-3-1
学习
作者: 白愁飞    时间: 2007-3-1
也来学习~
作者: 成龙之龙    时间: 2007-3-1
但有时访问次数也很重要.<br />比如我的分类信息站,<br />发布信息的朋友就很再意他发布的信息被看了几次.
作者: luo5    时间: 2007-3-1
是的,我的网站在04年就全部去掉实时统计和显示了。
作者: 2shoushichang    时间: 2007-3-1
是啊,这里面有个取舍的问题。<br />如果是自己的服务器的话,最好还是去掉。<br />如果是租用的空间,呵呵,就看看是按照iis收费还是按照cpu收费的了。
作者: luo5    时间: 2007-3-1
<br><br><div class="msgbody"><div class="msgheader">QUOTE:</div><div class="msgborder">原帖由 <i>2shoushichang</i> 于 2007-3-1 20:37 发表<br />是啊,这里面有个取舍的问题。<br />如果是自己的服务器的话,最好还是去掉。<br />如果是租用的空间,呵呵,就看看是按照iis收费还是按照cpu收费的了。 </div></div><br>我的办法是: 用另外的一个不太重要的,或空闲的空间、服务器 来记录点击。
作者: impop    时间: 2007-3-1
学习了
作者: wingates    时间: 2007-3-2
<br><br><div class="msgbody"><div class="msgheader">QUOTE:</div><div class="msgborder">原帖由 <i>luo5</i> 于 2007-3-1 20:46 发表<br /><br /><br /><br />我的办法是: 用另外的一个不太重要的,或空闲的空间、服务器 来记录点击。 </div></div><br>这个方法好
作者: jack_london    时间: 2007-3-3
看你的取舍了




欢迎光临 广告联盟网 (https://ggads.com/) Powered by Discuz! X3.2