六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 339|回复: 0

服务器推实现的相关资料

[复制链接]

升级  30%

3

主题

3

主题

3

主题

童生

Rank: 1

积分
15
 楼主| 发表于 2013-1-29 13:55:40 | 显示全部楼层 |阅读模式
有个不错的文章《Comet:基于 HTTP 长连接的“服务器推”技术》。文章提到Comet现实应用的需求:

  • 监控系统:后台硬件热插拔、LED、温度、电压发生变化;
  • 即时通信系统:其它用户登录、发送信息;
  • 即时报价系统:后台数据库内容发生变化;
也提到多种技术实现服务器推送。
    我现在比较同意这个,介绍了选择要注意的事项,比如服务器对long-polling的支持。现在主要关心:
    如果数据推送频率不高,并发压力不大,可以用基于 AJAX 的长轮询(long-polling)方式,实现比较简单。nginx有个Module可以支持long-polling,可能以后还支持Streaming。long-polling每次返回数据后是要再次请求。
    如果数据变化快,想以推送为主,可以用基于 Iframe 及 htmlfile 的流(streaming)方式。这里有比较不错的介绍,里边还介绍了APE等一些服务器实现,要根据具体情况来选择。比如APE是C实现的,我是用java的,对我来说它不容易扩展(基本javascript的扩展性能可靠性能实现的功能要测试,对于实在想走80端口,这个是我目前找到的功能全,而且官方说支持100K+并发,但是目前资料少,说明用的人不多啊)。APE1.0主要还是long-polling,流方式使用XHRStreaming在IE上不行;相比而言streamHub流是使用写<script>标签实现的,可以跨浏览器。那些不开源的不要说了,python也不熟悉,Jetty 6 和 Tomcat 6已经支持Comet,一般情况可以满足,并发太大了也要做选择,有人用netty自己实现,支持10万以上。想自己写服务器看这个用xsocket实现了
<div class="quote_title">引用
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表