原帖由
risingnox 于 2007-8-1 08:01 发表

关键问题就在一个实时问题上,我说的并没有1000人同时刷新,而是1/10的人刷新,那样数据库和带宽的压力会比较大,除非是有足够的带宽和过硬的服务器可以忽略这个问题。试想一下执行100条update语句每条更新一条 ...
想想看,如果策略是服务器每分钟刷新一次资源,那么,游戏是没办实现资源的实时更新的。既然在这样的环境下,通过用户访问来更新资源,也可以实行1分钟更新一次的策略。在SESSION中记录用户最后一次访问的时间,如果下次访问超过1分钟,则更新一次资源,如果没有越过,则不执行更新。这样,达到的效果和利用服务器循环更新是一样的。但是它的优点在于,只有在线的人才占用服务器资源。
换句话说,如果需要即时更新资源,服务器循环更新是无法实现的(除非你有超级服务器,每几秒钟能循环一次),但是,如果不需要即时更新,比如说1分钟-几分钟更新一次,那么,使用按访问更新还是要节约许多资源。所以,无论在任何的情况下,服务器循环更新都是不可取的!