11

我正在考虑编写一个需要能够将消息推送到浏览器的实时网络应用程序。当我第一次读到 Comet 时,由于浏览器支持不足,人们似乎认为它是一种脆弱且不成熟的方法。今天,它似乎是一种既定且实用的技术。但据我所知,现在浏览器对基本方法(长轮询、iframe 和脚本标签)的支持并不比 06 年这个想法首次流行时更好。

当然,很难在服务器端管理所有这些连接,但是 Comet 框架解决了这个问题(甚至在 06 年使用 Twisted 之类的东西也是可行的)。那么问题是什么:浏览器中的 Comet 支持是否存在任何破坏交易的问题,或者当时的人们是不是错了?

另外:我最近阅读了一篇 ~2010 年的博客文章,其中总结了 Comet 技术的状态,详细介绍了每种方法。这听起来好像没有一种方法是真正可行的。这篇文章很有说服力,这就是为什么我仍然对彗星感到不安。关于这个博客,我唯一能记住的是它有一个深色的背景(棕色或黑色)。有其他人看过那个帖子吗?我真的很想再读一遍。

4

2 回答 2

5

我认为 Comet 现在非常可行,每个浏览器都支持长轮询,所以你有一个仍然可以工作的通用后备,并且每个浏览器中都有一些方法比长轮询性能更高。

您只是不经常看到它,因为在每个浏览器中支持不同的方法是一项艰巨的任务,google 和 facebook 有资源来做到这一点,但您的普通 joe web 开发人员。将浪费大量时间而获得很少的收益。只有这么多应用程序您真正需要彗星提供的实时通信。

我认为现在有了像 APE 和 cometD 这样的框架,它们为您提供后端和客户端实用程序,您会看到更多的人能够承担复杂的任务。无论如何不能不成熟,彗星只是一种以非常新颖的方式利用现有能力的技术。

于 2011-04-27T14:29:41.943 回答
3

我认为浏览器在彗星方面没有太大变化,一切都保持在几年前。它的所有hackiness完好无损。WebSockets 将是最终的答案,因此浏览器制造商并不急于修复 commet,但该“标准”仍在不断变化。

于 2011-04-27T03:33:20.200 回答