comet(基于http长连接的“服务器推”技术)

comet(基于http长连接的“服务器推”技术)
web服务器是被动发送数据给客户端的,客户端有请求,服务器端才会响应(发送数据),
所以“服务器推”技术加了引号。
实现方式有两个:
1.基于ajax的长轮询(long-polling)方式
浏览器发送ajax请求(设置timeout,并且对返回的状态进行处理,
猜想:设置了timeout,connection:keep-alive就会加入到请求头中,即基于http长连接),
如果到了时间,http连接断了(底层是tcp连接断了)则重新发起请求。
2.基于 Iframe 及 htmlfile 的流(streaming)方式
页面中迁入一个隐藏帧(iframe),将隐藏帧的src属性设置为一个长连接请求,服务器端就能往客户端发送数据。

具体实现:http://www.cnblogs.com/AloneSword/p/3517463.html

时间: 2024-11-06 16:30:07

comet(基于http长连接的“服务器推”技术)的相关文章

Comet:基于 HTTP 长连接的“服务器推”技术

“服务器推”技术的应用 传统模式的 Web 系统以客户端发出请求.服务器端响应的方式工作.这种方式并不能满足很多现实应用的需求,譬如: 监控系统:后台硬件热插拔.LED.温度.电压发生变化: 即时通信系统:其它用户登录.发送信息: 即时报价系统:后台数据库内容发生变化: 这些应用都需要服务器能实时地将更新的信息传送到客户端,而无须客户端发出请求.“服务器推”技术在现实应用中有一些解决方案,本文将这些解决方案分为两类:一类需要在浏览器端安装插件,基于套接口传送信息,或是使用 RMI.CORBA 进

【转】Comet:基于 HTTP 长连接的“服务器推”技术

原文链接:http://www.ibm.com/developerworks/cn/web/wa-lo-comet/ 很多应用譬如监控.即时通信.即时报价系统都需要将后台发生的变化实时传送到客户端而无须客户端不停地刷新.发送请求.本文首先介绍.比较了常用的“服务器推”方案,着重介绍了 Comet - 使用 HTTP 长连接.无须浏览器安装插件的两种“服务器推”方案:基于 AJAX 的长轮询方式:基于 iframe 及 htmlfile 的流方式.最后分析了开发 Comet 应用需要注意的一些问题

转载:Comet:基于 HTTP 长连接的“服务器推”技术

转自:http://www.ibm.com/developerworks/cn/web/wa-lo-comet/ 很多应用譬如监控.即时通信.即时报价系统都需要将后台发生的变化实时传送到客户端而无须客户端不停地刷新.发送请求.本文首先介绍.比较了常用的“服务器推”方案,着重介绍了 Comet - 使用 HTTP 长连接.无须浏览器安装插件的两种“服务器推”方案:基于 AJAX 的长轮询方式:基于 iframe 及 htmlfile 的流方式.最后分析了开发 Comet 应用需要注意的一些问题,以

[转载] Comet:基于 HTTP 长连接的“服务器推”技术

转载自http://www.ibm.com/developerworks/cn/web/wa-lo-comet/ “服务器推”技术的应用 传统模式的 Web 系统以客户端发出请求.服务器端响应的方式工作.这种方式并不能满足很多现实应用的需求,譬如: 监控系统:后台硬件热插拔.LED.温度.电压发生变化: 即时通信系统:其它用户登录.发送信息: 即时报价系统:后台数据库内容发生变化: 这些应用都需要服务器能实时地将更新的信息传送到客户端,而无须客户端发出请求.“服务器推”技术在现实应用中有一些解决

HTTP长连接实现“服务器推”的技术

HTTP长连接实现“服务器推”的技术快速入门及演示示例 在我的印象里HTTP是一种“无状态的协议”,也就是不知道以前请求的历史,无法保留上一次请求的结果.Cookie的诞生,弥补了这个不足,浏览器可以通过本地持久化请求数据来记录上次请求的环境.但这个没有根本上改变HTTP请求本身的这种“客户端请求服务器端相应”模式——客户端是主动的,而服务器是被动的.最近听说有“HTTP长连接”,去探索了一把,果然很有意思,能够实现“服务器推”的这种概念,也就是服务器是主动发送请求,客户端是被动接受请求.关于“

Comet技术详解:基于HTTP长连接的Web端实时通信技术

前言 一般来说,Web端即时通讯技术因受限于浏览器的设计限制,一直以来实现起来并不容易,主流的Web端即时通讯方案大致有4种:传统Ajax短轮询.Comet技术.WebSocket技术.SSE(Server-sent Events). 关于这4种技术方式的优缺点,请参考<Web端即时通讯技术盘点:短轮询.Comet.Websocket.SSE>.本文将专门讲解Comet技术.(本文同步发布于:http://www.52im.net/thread-334-1-1.html) 学习交流 - 即时通

Android 心跳包心跳连接 如何实现android和服务器长连接呢?推送消息的原理

前言:现在的大多数移动端应用都有实时得到消息的能力,简单来说,有发送消息的主动权和接受消息的被动权.例如:微信,QQ,天气预报等等,相信好处和用户体验相信大家都知道吧. 提出问题:这种功能必须涉及client(客户端)和server(服务器),所以到底client如何和server实现实时连接通讯? 分析问题:这种功能实际上就是数据同步,同时要考虑手机本身.电量.网络流量等等限制因素,所以通常在移动端上有一下两个解决方案:1.一种是定时去server查询数据,通常是使用HTTP协议来访问web服

也谈---基于 HTTP 长连接的“服务(转载)

这里指讨论基于HTTP的推技术, 诸如flash,applet之类的东西不作分析, 他们就不能说是"纯粹"的浏览器应用了. 首先是一点背景知识, 大家都知道长连接避免了tcp连接的反复建立,能够节省大量资源. 但HTTP天生就是短连接的pull式服务, 这不能说是个缺点, 只是对某些实时性服务而言有点不合适. 目前大部分浏览器和web服务器都支持keep-alive参数, 这一点可以部分解决频繁建立连接的问题. RFC 2068 明确了浏览器与一服务器的连接数不得超于2个, IE这样办

HTTP 笔记与总结(9)分块传输、持久链接 与 反向 ajax(comet / server push / 服务器推技术)

反向 ajax 又叫 comet / server push / 服务器推技术 应用范围:网页聊天服务器,例如新浪微博在线聊天.google mail 网页聊天 原理:一般而言,HTTP 协议的特点是,连接之后断开连接(服务器响应 Content-Length,收到了指定 Length 长度的内容时,也就断开了).在 HTTP 1.1 协议中,允许不写 Content-Length,比如要发送的内容长度确实不知道,此时需要一个特殊的 Content-Type:chunked,叫做分块传输,只有当