0

我有一个关于彗星实施的问题。我知道它用于处理类似于现在可以通过 Servlet 3.0 异步功能实现的异步请求。然而,我不明白的是如何对调用客户端进行推送。

在 Web 套接字中,我们通过提供 ip 和端口来打开连接。使用 Comet,如何与服务器连接以便在服务器推送数据时接收回调?

4

1 回答 1

1

Comet (programming)上的维基百科页面是这个问题的一个很好的资源(对不起,它太明显了)。

Comet 是使用 HTTP 来模拟客户端和服务器之间的双向连接的总称。最终,您向服务器发出 HTTP 请求并尝试使其保持打开状态(长轮询和流式传输)。通过长轮询,连接在给定时间间隔后或返回数据时关闭。通过流式传输,连接有助于尽可能长时间地打开,并通过现有连接发送新数据。

这些是如何在网络浏览器之间实现的——这就是为什么 Comet 被归类为黑客的原因。同样,维基百科页面应该提供您需要的几乎所有信息。

我写了一篇文章,涵盖了实时 Web 通信的历史(侧重于客户端)以及为什么WebSocket 会改变游戏规则

于 2013-03-22T11:17:49.593 回答