现在我做的模块的要求是:
不要客户端主动去刷新服务器端(数据库)的数据,要做到服务器端(数据库)数据发生更改后才将新的数据推送到客户端,应该怎么做呢?
之所以不要客户端主动去刷新服务器(数据库)的数据,是这样太麻烦了,虽然可以在客户端用一个timer控件循环刷新判断其数据如果发生更改时再重新绑定,但这些少数据量可以,数据量大的话就算每隔10秒或者几十秒去刷新一次,而且有几十个客户端,这样长此下去是不行的
所以,请教一下各位大大大大大大神应该怎么做???WinForm

解决方案 »

  1.   

    主动的获取的时候是你主动接收信息,服务器推送就反过来啦,服务器主动把信息给客户端。
    客户端只用被动的接收数据就可以了,监听数据就行了。
    还简单点,就是服务器把数据传给客户机。你可以参考socket聊天的源码。
      

  2.   

    使用timer时间控件,每隔一段时间去服务器请求一次数据,有数据更新的时候刷新界面
      

  3.   


    我的意思就是这样!但是我也参考过socket聊天,但是好像搭不上边啊
    哥你有我想要的源码么
      

  4.   

    timer隔一段时间去请求已经是一个比较优的解决方案了,服务器本来就没有办法主动向客户端推送消息的,十几个客户端不多的,很少的,你看到的所有推动其实也都是每隔一段时间向服务器做一次数据请求
      

  5.   


    拿别人像那种股票行情软件是怎么做的 也是客户端循环刷新服务器端的数据么我知道一个银行获取一些价格或者汇率的东西是客户端使用客户端连到服务器上,保持这个socket连接,然后服务器有变更的时候就发送数据给它