声明:JavaEye新闻文章的版权属于JavaEye网站所有,严禁任何网站转载本文,否则必将追究法律责任!
Daniel Rubio(TSS.COM的博客管理者)发布一篇文章介绍Comet,comet是一种server push技术,传统模式的 Web 系统以客户端发出请求、服务器端响应的方式工作。这种方式并不能满足很多现实应用的需求,很多应用都需要服务器能实时地将更新的信息传送到客户端,而无须客户端发出请求。Comet解决了这个问题,简单的说就是客户端发送一个请求,服务器接收它,并使用一个无限循环,将客户端需要的数据push到response中,并进行刷新,但是该response并不关闭,继续接收新的数据并刷新,直到客户端断开连接,该循环才结束退出。
Comet可以通过多种方式实现,比如iFrames,Flash,ActiveX,Applet等,可以基于 AJAX 的长轮询方式,也可以基于 iframe 及 htmlfile 的流方式,也可以使用客户端插件来实现。由于AJAX现在已经是Javascript+XML的广泛应用标准,通过AJAX实现Comet在未来应该大有前途。一些web服务器Resin,Jetty等已经开始支持Comet。
来自:
http://macrochen.javaeye.com/blog/28020
http://www.theserverside.com/news/thread.tss?thread_id=48472
http://www.ibm.com/developerworks/cn/web/wa-lo-comet/
Comet可以通过多种方式实现,比如iFrames,Flash,ActiveX,Applet等,可以基于 AJAX 的长轮询方式,也可以基于 iframe 及 htmlfile 的流方式,也可以使用客户端插件来实现。由于AJAX现在已经是Javascript+XML的广泛应用标准,通过AJAX实现Comet在未来应该大有前途。一些web服务器Resin,Jetty等已经开始支持Comet。
来自:
http://macrochen.javaeye.com/blog/28020
http://www.theserverside.com/news/thread.tss?thread_id=48472
http://www.ibm.com/developerworks/cn/web/wa-lo-comet/


评论 共 10 条 发表评论
jiangyubao 2008-02-22 17:57
至于长链接的问题,我们使用的是hightide服务器,这个服务器是Jetty实现的,内置了ActiveMQ,针对comet技术做了一些优化。Jetty本身就是Java NIO来实现的(JAVA NIO不使用一个线程对应一个请求的工作模式),所以长链接的性能问题也给解决了,hightide的链接地址:
http://www.webtide.com/
我们程序已经开发好了,正在集成测试。下阶段我们打算测试性能,如果实在不行,我想把它部署到glassfish服务器上,因为glassfish服务器也是NIO实现的,而且支持集群和负载均衡,具体如何搭建glassfish,是否能解决性能问题,我还在做实验。
pppppp 2008-02-22 17:14
strongkill 2008-02-22 15:11
9esuLuciano 2008-02-22 15:11
qichunren 2008-02-22 11:35
beckrabbit 2008-02-22 11:29
jichongchong 2008-02-22 11:28
sys53 2008-02-22 08:45
zhangd83 2008-02-21 15:04
wangxinpier 2008-02-21 12:49