代码之家  ›  专栏  ›  技术社区  ›  justkt

使用Apache和Perl进行服务器推送的机制

  •  3
  • justkt  · 技术社区  · 14 年前

    我希望在Apache之上使用Perl构建的页面中添加一些类似HTTP推送的功能,这些功能是通过长轮询或其他标准方法实现的。

    有没有一种方法可以做到这一点而不设置一个单独的服务器,如流星或星尘?是否有一个模块可以帮助处理服务器代码?除了长投票还有别的办法吗?

    1 回复  |  直到 14 年前
        1
  •  2
  •   Mick    14 年前

    如果您需要快速而肮脏的修复来避免对当前应用程序或设计进行重大更改,并且不需要即时更新,那么一种简单的方法是使用从浏览器到服务器的常规Ajax轮询。

    换言之,您的浏览器中会有javascript,每隔几秒钟检查一次服务器,查看服务器上是否有此浏览器会话的任何消息和/或数据。这很可能无法很好地扩展,尤其是在短轮询超时的情况下,并且会耗尽服务器资源,但这可能是一个有用的权宜之计。

    只是重申一下,这只是一个快速修复的解决方案-一般的共识是您需要使用Comet(在您的情况下可能在单独的服务器上)作为适当的解决方案(直到WebSockets到达…)-请参阅以下链接中的一些好的分析:

    http://cometdaily.com/2007/11/06/comet-is-always-better-than-polling/ http://stackoverflow.com/questions/2975290/comet-vs-ajax-polling

    推荐文章