服务器推送技术 — 微博消息实时更新

chenglin博客 2014年4月9日 浏览 9052 回复15

当我们需要实时数据推送,更新客户端信息时,我们需要一个技术来承载我们的这些梦想。
comet,基于 HTTP长连接的“服务器推”技术,是一种新的 Web 应用架构。同事说新浪微博就是用的这种技术;
它只是一个概念,代码还是我们自己写。

我们先剖析下,这个概念: 简单三个字 — 长轮询
这个技术是使用js做请求。
何为 “长” :等待时间长;
何为 “轮询”: 不断请求;

那么加在一起就是 不断请求,但是请求之间间隔时间很长,必须等上一个请求完事后,在继续下一个轮询。

那么一个请求什么时候结束?
这里可以是服务器把请求hold住,要超时了在释放;

要是你害怕服务器不返回怎么办:客户端js settimeout ,每隔一段时间去请求

概念完了,我们看看简单的代码吧:
我们这里实现一个,每隔3秒更新客户端的时间的程序;

客户端html+js:

服务器端PHP:

大家可以试试,希望大家明白其中深意;



发表评论

电子邮件地址不会被公开。 必填项已用*标注

姓名
邮箱
网址

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

服务器推送技术 — 微博消息实时更新》上有15条评论

  1. 哇,你把这个主题修改的好漂亮,能不能来一份。找好久,没找到如意的主题,你的这个不错,谢谢博主了。
    邮箱:1067939689@qq.com