初识Comet技术
初识Comet技术 一、服务器推送技术概述 服务器推送技术(Servers Push)的基础思想是将浏览器主动查询信息改为服务器主动发送信息。服务器发送一批数据,浏览器显示这些数据,同时保证与服务器的连接。当服务器需要再次发送一批数据时,浏览器显示数据并保持连接。以后,服务器仍然可以发送批量数据,浏览器继续显示数据,依次类推 。主要应用于: 监控系统:报警提示; 即时通信系统:其它用户登录、发送信息; 即时报价系统:后台数据库内容发生变化; 实现基于web的实时事件通知 。 实现方式有: 基于客户端套接口 : 采用RMI、CORBA或者自定义TCP/IP信息的applet来实现 Comet: 基于 HTTP 长连接、无须在浏览器端安装插件的技术 1.传统轮询 在Web早期,这一点常使用meta刷新实现。这将自动指示浏览器在指定秒数之后重新装载页面,从而支持简陋的轮询(polling)。例如在HTML文件中加入<META HTTP-RQUIV="Refresh" CONTENT=12>,实际上就是HTTP头标告知浏览器每12秒更新一次文档。 优点:不需要服务器端的配置。 缺点:a) 糟糕的用户体验; b) 对服务器的压力很大,并且造成带宽的极大浪费。 2. Ajax轮询 Ajax隔一段时间(通常使用JavaScript的setTimeout函数)就去服务器查询是否有改变