来自 Java 服务器的持久 http 连接
Posted
技术标签:
【中文标题】来自 Java 服务器的持久 http 连接【英文标题】:Persistent http connection from Java server 【发布时间】:2011-04-07 16:34:59 【问题描述】:我想在 Java Spring 服务器和 android 客户端之间创建一个持久连接。
我需要的是一种具有持久(长期 HTTP)连接的推送机制,一旦可用,它会将所有信息从服务器流式传输到客户端。
是否有任何可用的框架支持这一点,最好是 Java Spring。将帮助我实现这一点的教程或文档。
【问题讨论】:
你会得到的最好的东西是类似于彗星/长轮询/反向 ajax 的东西,带有一个保持连接的连接,它使底层 TCP 连接在请求之间保持活动状态。 HTTP 中没有“连接”。 这有点不真实,因为打开对分块数据的请求会创建一个持久连接 我需要创建一个 RESTful 服务器和一个 Android 客户端(不是 Web 客户端,而是 Android 原生应用程序),它们将连接到该服务器并等待响应,因此 html/Ajax 不适合我。如果我理解 comet 仅适用于网络解决方案,对吗? Comet 更像是一种实现您所要求的通信模式的技术。而这并不是那么“安宁”。 【参考方案1】:您可以开始here 了解实现此目的的一般方法。
一些示例技术是:
Google App Engine Channel API HTML5 Websockets Blaze DS【讨论】:
【参考方案2】:在“推送”方面,长寿命 HTTP 连接和 WebSockets 通常更适合 Web 应用程序。
如果您不介意在服务器端进行一些工作,那么持久套接字绝对是最省电的方式。
这是一个好的开始:http://devtcg.blogspot.com/2009/01/push-services-implementing-persistent.html
【讨论】:
以上是关于来自 Java 服务器的持久 http 连接的主要内容,如果未能解决你的问题,请参考以下文章