【问题标题】:AJAX/Reverse AJAX: Polling or Push?AJAX/反向 AJAX:轮询还是推送?
【发布时间】:2012-07-03 12:04:58
【问题描述】:

一直在研究 AJAX,因为我正在用 Javascript 和 PHP 制作一个实时应用程序。它需要能够在不刷新页面的情况下实时更新。

我尝试使用 setInterval() 轮询服务器,但为了快速,我必须每秒钟都有一次。不过,它似乎正在使用大量带宽。但是它确实有效,我与我的托管服务提供商制定了“无限带宽”的计划。看起来网站压力很大,所以我想使用 Push 技术。

学习如何设置 Push 非常困难。据我所知,您必须托管某种类型的推送服务器或彗星服务器。我也研究了 websockets,但你也必须自己托管它。当我没有服务器计算机并且我的托管服务提供商网站上没有关于此的文档时,我不明白该怎么做。

特定的托管服务提供商会为您托管推送服务器吗?有没有办法在不托管服务器的情况下获得服务器?与轮询相比,这似乎是一个更好的选择,但同时也显得非常混乱。

【问题讨论】:

    标签: ajax real-time comet reverse-ajax ajax-polling


    【解决方案1】:

    特定的托管服务提供商会为您托管推送服务器吗?有没有办法在不托管服务器的情况下获得服务器?与轮询相比,这似乎是一个更好的选择,但同时又显得非常混乱。

    是的,我为提供此类服务的Pusher 工作。您可以查看快速入门指南here。您还可以阅读其他 realtime hosted services

    我也建议你看看:

    正如第一个链接所表达的,我的观点是 PHP 对于实时 Web 应用程序来说不是一个好的技术。您最好使用不同的组件作为实时 Web 基础设施。那应该是自行安装的东西或托管解决方案,例如我工作的Pusher。为什么? PHP + Apache 不是为维护长时间运行的连接而构建的。您可以查看 PHP 独立的 WebSocket 解决方案,但您有 80% 的可能正在使用 Apache 和 20% 的 nginx,它们还不支持 WebSockets(但很快就会支持)。即使这样,我也不确定它们将如何与标准的 PHP 请求/响应应用程序流集成。

    【讨论】:

      猜你喜欢
      • 2011-02-05
      • 2010-09-18
      • 2011-04-20
      • 1970-01-01
      • 1970-01-01
      • 2011-12-26
      • 2012-02-24
      • 2011-01-20
      • 2011-12-20
      相关资源
      最近更新 更多