none
关于在网页上的实时更新 RRS feed

  • 问题

  • 我在网站上有关拍卖的功能,要检测这个拍卖物品是否过期或者是否得标什么的,一旦符合某个条件就修改数据库,比如拍卖物A,过期了,就将它的状态改为过期,这要有个TIMER实时检测的吧,我现在也做到了这个,是每隔一分钟检一次,效果也实现了,但是查看SQL数据库记录,每隔一分钟数据库都要登录一次,觉得在性能上是不是有问题,能不能给点建议,不知我想的是否正确,切盼赐教!
    cathy
    • 已移动 孟宪会Moderator 2009年5月17日 13:08 ([Loc]From:.NET Framework 一般性问题讨论区)
    2009年5月17日 9:11

答案

  • 你好!
         性能上的开销是一定会有的,实际上数据库可以一直保持连接,不用每次都新建连接啊!
         另外,这种需求一般不适合使用缓存类的方法,一旦缓存了,数据也就不是实时的了,我感觉可以在时间间隔上多考虑一些,例如可以把时间间隔设置的长一些,这样减少访问数据库的次数!
         以上是个人的一些意见,仅供参考!
        
         实际上关于这个问题,可以等韦恩版主给出更加专业的解答啊!
    周雪峰
    2009年5月17日 11:04
    版主
  • 随着客户端的数量增多多,那么服务器的处理压力会慢慢变大,这是肯定的,你可以考虑以下面方式

    1. 还是客户端定时扫瞄服务器,但把数据放到 Cache 中,一能更快的得到响应二能减少对数据库的访问次数
    2. 在拍卖物器状态发生改变的时候可以利用 Server push 向客户推送消息,然后客户端再执行具体的业务(一些竞价系统也是采取的这样的方式)
    3. 利用客户端的 ActiveX 与服务端建立 socket 通信,达到实时的目的


    知识改变命运,奋斗成就人生!
    2009年5月17日 11:31
    版主

全部回复

  • 你好!
         性能上的开销是一定会有的,实际上数据库可以一直保持连接,不用每次都新建连接啊!
         另外,这种需求一般不适合使用缓存类的方法,一旦缓存了,数据也就不是实时的了,我感觉可以在时间间隔上多考虑一些,例如可以把时间间隔设置的长一些,这样减少访问数据库的次数!
         以上是个人的一些意见,仅供参考!
        
         实际上关于这个问题,可以等韦恩版主给出更加专业的解答啊!
    周雪峰
    2009年5月17日 11:04
    版主
  • 随着客户端的数量增多多,那么服务器的处理压力会慢慢变大,这是肯定的,你可以考虑以下面方式

    1. 还是客户端定时扫瞄服务器,但把数据放到 Cache 中,一能更快的得到响应二能减少对数据库的访问次数
    2. 在拍卖物器状态发生改变的时候可以利用 Server push 向客户推送消息,然后客户端再执行具体的业务(一些竞价系统也是采取的这样的方式)
    3. 利用客户端的 ActiveX 与服务端建立 socket 通信,达到实时的目的


    知识改变命运,奋斗成就人生!
    2009年5月17日 11:31
    版主