2014-07-28

HTTP 长连接技术 Comet

Views: 17941 | 3 Comments

人们常常提到"Comet", 或者"Web 服务器推", "HTTP 长连接", 事实上, 他们指的是同一件东西, 可以统称为 Comet 技术. 但是, Comet 技术又不是单独的一种东西, 而解决某一个问题的许多技术的统称. 要解决的问题是 Web 服务器向浏览器实时推送数据, 而解决方案有很多种.

最经典的方案是 AJAX 轮询, 这种方案和"推"技术毫无关系, 只是由于轮询的间隔比较短, 如一两秒, 便给了用户实时的错觉.

新下来是安装浏览器插件, 如 Active-X, 或者使用 Flash 插件, Java Applet 插件等, 这些方案都不通用, 兼容性不好, 也不能被称为 Comet 技术.

根据实践, 真正的 HTTP 长连接方案主要有: Script Tag Long-Polling, Forever Iframe, WebSocket. 这些方案在我的另一篇文章"各种 Comet 技术优缺点对比"有介绍.

对于开发者, 为了快速和方便的开发, 应该选择一个支持 Comet 技术的 Web 服务器和一套 JavaScript 库. iComet 就是这样的一套解决方案.

iComet 开源项目: https://github.com/ideawu/icomet
iComet Demo: http://www.ideawu.com/icomet/chat/

Related posts:

  1. 各种 Comet 技术优缺点对比
  2. 轻量级 COMET 服务器 icomet 支持 EventSource(SSE)
  3. Libevent HTTP 内存泄露
  4. 为什么iComet比nginx-push-stream-module更好?
Posted by ideawu at 2014-07-28 08:46:23 Tags: ,

3 Responses to "HTTP 长连接技术 Comet"

Leave a Comment