什么是Real-Time Web

“Real-Time Web”应该算一个新的流行词,我不知道应该如何翻译,“实时网络”,虽然已有这样的称呼,好像不太贴切,并且和已有的实时网络概念有些混淆。所以暂时还是保持它原来的样子吧。

    一、Real-Time web的定义

    在维基百科(Real-time web)上是这样定义的:

    “The real-time web is a set of technologies and practices which enable users to receive information as soon as it is published by its authors, rather than requiring that they or their software check a source periodically for updates.

     这里把Real-Time web定义为一个技术和实践的集合;它与传统web的不同点在于可以让用户更及时地获取“作者”的更新。

     在此之前,比较类似的技术应该是RSS。RSS Reader会定时从用户订阅的地址上抓取内容,并不是太及时。

    二、Real-Time web的代表

    Real-Time web的典型代表主要有Twitter、Facebook和Google。

    当在Twitter进行搜索时,我们可以看到结果会持续不断的更新。有人做过测试,从发布到结果出现几乎是同时的。而Facebook的friend feeds更新也提供了同样的用户体验。

    提到互联网的先进技术,就不能不说Google。Google虽然没有赶上Twitter和Facebook的早班车,但是在2009年12月份宣布将实时搜索(Real-time search)引入到Google搜索中。

     在我看来对于同一网站的实现Real-Time web的体验并不困难(也许这句话会招来口水),毕竟数据都在自己的控制中。但是对于Google来讲如果能够从这么庞杂的网络中实时抓取信息,并且作为搜索结果准确地返回给用户,的确应该是一个不小的挑战。

   三、实现Real-Time web的技术

   作为一个程序员,当看到一个新东西时,最先关注的可能还是如何去做,也就是背后的技术。

   1、传统的Ajax Pull

   Ajax为页面的局部刷新提供了可能,因此最容易想到的就是Ajax Pull技术了。大概的实现是每隔一段时间使用Ajax进行一次请求,页面上的JavaScript根据返回的结果进行相应的处理。

   2、Comet

   Comet的实现方法主要有隐藏Iframe技术和Long Polling。隐藏IFrame技术是指利用一个一直打开的不可见的IFrame维持一个和服务器间的持续链接,从而获得较快更新页面的体验。Long Polling技术是一种把页面定时请求和服务器端Push相结合的技术。页面上的Ajax启动一个请求,服务器收到该请求后,并不会立即响应,而是等待一段时间。在这段时间内容,如果服务器有内容更新就会向客户端返回更新的内容;如果没有更新,就会返回超时响应。

   3、 服务器端的Push技术

   这应该是一种最理想的技术。页面一次请求后,只需等待服务器不断的返回更新的内容。HTTP1.1已经支持客户端和服务器之间的长连接,而HTML5.0的Web Socket也已经在考虑实现。

   4、PubSub

   这是一种广播订阅机制。相对于频繁的客户端请求,作者不断的向订阅者发布更新的内容会有更好的用户体验。前不久Google发布一个PubSubHubHub的项目,支持Real-Time Web的广播订阅机制。  如今已经有MySpace、Facebook、Google Reader等在使用PubSubHubHub。

 

   Real-Time Web正慢慢地变为除IM、Email以外另外一种通信方式,并且用户群正在不断的扩大。而这里,我也是说的杂乱无章,感觉很多东西要说,却不知从何说起,欢迎大家拍砖讨论!

 

   参考文章:

 

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mydeman

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值