论坛首页 Java企业应用论坛

关于消息实时接收的问题

浏览 13323 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-10-21  
如何实时推送数据?保持长连接,客户端想服务器发起请求数据, 服务器收到请求先不返回,等有更新了再返回, 客户端收到response了就更新页面数据,然后再像服务器发送请求,不断循环.对于高并发的应用, 长连接会很蛋疼!线程不够用的.
0 请登录后投票
   发表时间:2010-10-21  
wujiazhao88 写道
如何实时推送数据?保持长连接,客户端想服务器发起请求数据, 服务器收到请求先不返回,等有更新了再返回, 客户端收到response了就更新页面数据,然后再像服务器发送请求,不断循环.对于高并发的应用, 长连接会很蛋疼!线程不够用的.


有种思想叫分布式应用,有种分布式应用框架叫SOA,有种SOA框架实现叫SCA、ESB,如果用户量大、线程多,可以考虑分布式部署,相信能解决你提出的线程问题。问题就是现在需要提出一个比推模式更好的方式
0 请登录后投票
   发表时间:2010-10-21  
JMS or comet
0 请登录后投票
   发表时间:2010-10-21  
采用 apache的mq保存从数据库接受到的数据,在服务器上缓存保存mq接受的数据,客户端采用ajax实时连接获取缓存的数据,如果数据有变化生成结果,没有变化不需要刷新结果。
0 请登录后投票
   发表时间:2010-10-21  
robin_leung 写道
comet

0 请登录后投票
   发表时间:2010-10-21  
dwr
flex+blazeds
或者自己做ajax轮询
0 请登录后投票
   发表时间:2010-10-22  
最好的做法是让服务器端通知你,你可以用red5服务器+flex来实现一下
0 请登录后投票
   发表时间:2010-10-26  
jms的订阅、发布模式,或者MQ,
oracle的触发器也是一个思路,消息生成时根据订阅列表推送消息。
推送比主动获取要灵活。
0 请登录后投票
   发表时间:2010-10-26   最后修改:2010-10-26
wujiazhao88 写道
如何实时推送数据?保持长连接,客户端想服务器发起请求数据, 服务器收到请求先不返回,等有更新了再返回, 客户端收到response了就更新页面数据,然后再像服务器发送请求,不断循环.对于高并发的应用, 长连接会很蛋疼!线程不够用的.

nio可以让蛋痛少些.....
200就算不nio也就是将将支持不了...
PS:弹出之前不要用长连接....轮询就够了.
只有对话模式时时需要低于1分钟的才有必要用长连接.
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics