我一直在想,如果使用COMET/push-technology技术比使用长请求更简单的轮询有一个真正的优势,那就是在告诉客户端没有任何事情发生之前,服务器将等待新事件发生的某个最大时间。COMET对长请求轮询的好处?
这两种技术都有类似的客户端延迟,而普遍的看法是长时间的请求更糟糕,因为他们需要建立一个新的连接,还有一个事实就是存在HTTP保持活动 - 所以最终,两者似乎都产生非常相似的流量/负载量。
那么使用COMET有没有一些明显的优势?
我一直在想,如果使用COMET/push-technology技术比使用长请求更简单的轮询有一个真正的优势,那就是在告诉客户端没有任何事情发生之前,服务器将等待新事件发生的某个最大时间。COMET对长请求轮询的好处?
这两种技术都有类似的客户端延迟,而普遍的看法是长时间的请求更糟糕,因为他们需要建立一个新的连接,还有一个事实就是存在HTTP保持活动 - 所以最终,两者似乎都产生非常相似的流量/负载量。
那么使用COMET有没有一些明显的优势?
AFAIK轮询与长时间的请求几乎是彗星。轮询与短的请求不是。
我能想到的一些优点:
您描述的等待时间是您对长请求的“短请求”所具有的延迟,服务器将延迟答案,直到发生事件或达到最大超时(以防止连接超时)。这意味着您必须每分钟制作一个请求,但仍然几乎没有延迟,因为服务器上的事件会触发下一个响应。 客户端不那么复杂..客户端请求单个事件URI并在获得答案后立即重新请求它。 – fforw 2009-05-21 11:54:57
不是我所能看到的......(/我想知道是否有这样一个彗星变形金刚迷) – annakata 2009-05-21 11:19:45
@annakata这些日子里还有人/我吗? – Pacerier 2012-07-03 09:17:18