HTTP可用于跟踪连接吗?

时间:2011-07-25 13:31:44

标签: c# .net http sockets

我知道HTTP是严格面向连接还是无连接存在争议。 AFAIK,HTTP仅保持足够长的连接以传输一系列即时请求。最近,一位微软认证的架构师和我正在讨论一种向“连接”客户端广播更新的方法。

想象一下跳棋游戏。如果player1进行了移动,则需要通知player2。使用HTTP(无TCP / UDP),我所知道的唯一方法是轮询。建筑师不同意我的看法。

那么,如何仅使用HTTP向“连接”客户端发送更新?

2 个答案:

答案 0 :(得分:5)

目前有两种解决方案:

  • WebSockets提供真正的回调,但未被广泛采用
  • 使用Comet实施(例如WebSync)。这使用了民意调查。

答案 1 :(得分:0)

在HTTP级别,您可以通过不指定Content-Length或关闭连接来流式传输客户端可以接收的数据。 一些客户端/服务器具有“无数据”超时,因此发送定期保持活动是个好主意。 但是,回复需要在另一个HTTP请求中。

流的扩展是客户端建立连接,服务器在准备就绪之前不发送任何数据。客户端然后处理回复并立即再次连接下一个块。