7

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

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

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

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

4

1 回答 1

4

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

是的,我为提供此类服务的Pusher工作。您可以在此处查看快速入门指南。您还可以阅读其他实时托管服务。

我还建议你看看:

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

于 2012-07-03T15:29:17.717 回答