读书人

comet push学习记要

发布时间: 2012-11-01 11:11:31 作者: rapoo

comet push学习记录

?

?? Comet push技术最根本的还是socket通信。它将客户端会话注册到一个map中,服务端通过客户端传入的JESSIONID来识别客户端,服务端不断给map中所有JESSIONID下的session注入数据。另一方面一旦有客户端链接,服务端就可以通过JESSIONID不断读session数据,然后发送给客户端。当然这种技术有缺陷,不适合高并发的访问。因为客户端和服务器端建立的是长连接,一旦连接过多服务端很难承受。

?

?这里分服务端和客户端分别说明:

服务端

初始化阶段:

启动tomcat服务时,利用监听启动serversocket接口,并监听客户端请求 。同时还需启动一个session监听接口,当客户端访问时,session监听器通过sessionMap,将客户端发送关来的会话session中JSESSIONID作为sessionMap的key,session作为value.其中JSESSIONID是客户端的唯一标识。Sesssion监听程序大概如下:

?

?

注:在这学习的过程中是参照牛人hexiaodong的代码,其blog地址http://hexiaodong.iteye.com/

<p>?</p><p>?</p>
</div>
<p><br>Comet是长连接啊,只要服务端不关闭连接就行了啊</p> 3 楼 likeblood 2009-10-22 http协议本身就支持长连接 如果你只用浏览器以http方式连接 不用这么麻烦 看看http协议吧 4 楼 only_java 2009-10-22 likeblood 写道http协议本身就支持长连接 如果你只用浏览器以http方式连接 不用这么麻烦 看看http协议吧
我不是用浏览器以http方式连接 ,是Tcp链接

读书人网 >软件架构设计

热点推荐